TSTP Solution File: ALG261^1 by Vampire---4.8

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Vampire---4.8
% Problem  : ALG261^1 : TPTP v8.1.2. Bugfixed v5.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule file --schedule_file /export/starexec/sandbox2/solver/bin/quickGreedyProduceRating_steal_pow3.txt --cores 8 -m 12000 -t %d %s

% Computer : n002.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Sun May  5 04:13:25 EDT 2024

% Result   : Theorem 0.21s 0.55s
% Output   : Refutation 0.21s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   49
%            Number of leaves      :  100
% Syntax   : Number of formulae    :  277 ( 210 unt;  61 typ;   0 def)
%            Number of atoms       : 4730 (1162 equ;   0 cnn)
%            Maximal formula atoms :    3 (  21 avg)
%            Number of connectives : 18524 ( 217   ~;   0   |; 101   &;13318   @)
%                                         (   0 <=>;2071  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    5 (   1 avg)
%            Number of types       :    3 (   2 usr)
%            Number of type conns  : 1042 (1042   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   96 (  92 usr;  43 con; 0-4 aty)
%                                         (2817  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 3207 (2979   ^ 228   !;   0   ?;3207   :)

% Comments : 
%------------------------------------------------------------------------------
thf(type_def_5,type,
    term: $tType ).

thf(type_def_7,type,
    subst: $tType ).

thf(func_def_0,type,
    term: $tType ).

thf(func_def_1,type,
    subst: $tType ).

thf(func_def_2,type,
    one: term ).

thf(func_def_3,type,
    ap: term > term > term ).

thf(func_def_4,type,
    lam: term > term ).

thf(func_def_5,type,
    sub: term > subst > term ).

thf(func_def_6,type,
    id: subst ).

thf(func_def_7,type,
    sh: subst ).

thf(func_def_8,type,
    push: term > subst > subst ).

thf(func_def_9,type,
    comp: subst > subst > subst ).

thf(func_def_10,type,
    var: term > $o ).

thf(func_def_18,type,
    hoasap: subst > term > subst > term > term ).

thf(func_def_73,type,
    hoaslam: subst > ( subst > term > term ) > term ).

thf(func_def_86,type,
    hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).

thf(func_def_107,type,
    hoasvar: subst > term > subst > $o ).

thf(func_def_121,type,
    pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).

thf(func_def_142,type,
    sK1: ( term > $o ) > term ).

thf(func_def_143,type,
    sK2: ( term > $o ) > term ).

thf(func_def_144,type,
    sK3: ( term > $o ) > term ).

thf(func_def_145,type,
    sK4: ( term > $o ) > term ).

thf(func_def_146,type,
    sK5: ( term > $o ) > term ).

thf(func_def_147,type,
    sK6: ( term > $o ) > term ).

thf(func_def_148,type,
    sK7: ( term > $o ) > term ).

thf(func_def_149,type,
    sK8: ( term > $o ) > term ).

thf(func_def_150,type,
    sK9: ( term > $o ) > term ).

thf(func_def_151,type,
    sK10: ( term > $o ) > term ).

thf(func_def_152,type,
    sK11: ( term > $o ) > term ).

thf(func_def_153,type,
    sK12: ( term > $o ) > term ).

thf(func_def_154,type,
    sK13: ( term > $o ) > subst > term ).

thf(func_def_155,type,
    sK14: ( term > $o ) > term ).

thf(func_def_156,type,
    sK15: ( term > $o ) > term ).

thf(func_def_157,type,
    sK16: ( term > $o ) > subst > term ).

thf(func_def_158,type,
    sK17: ( term > $o ) > term ).

thf(func_def_159,type,
    sK18: ( term > $o ) > term ).

thf(func_def_160,type,
    sK19: ( term > $o ) > term ).

thf(func_def_161,type,
    sK20: ( term > $o ) > subst > term ).

thf(func_def_162,type,
    sK21: ( term > $o ) > term ).

thf(func_def_163,type,
    sK22: ( term > $o ) > term ).

thf(func_def_164,type,
    sK23: ( term > $o ) > term ).

thf(func_def_165,type,
    sK24: ( term > $o ) > term ).

thf(func_def_166,type,
    sK25: ( term > $o ) > term ).

thf(func_def_167,type,
    sK26: ( term > $o ) > term ).

thf(func_def_168,type,
    sK27: ( term > $o ) > term ).

thf(func_def_169,type,
    sK28: ( term > $o ) > term ).

thf(func_def_170,type,
    sK29: ( term > $o ) > term ).

thf(func_def_171,type,
    sK30: ( subst > term > term ) > term ).

thf(func_def_172,type,
    sK31: ( subst > term > term ) > subst ).

thf(func_def_173,type,
    sK32: ( subst > term > term ) > term ).

thf(func_def_174,type,
    sK33: ( subst > term > term ) > subst ).

thf(func_def_175,type,
    sK34: ( subst > term > term ) > subst ).

thf(func_def_176,type,
    sK35: ( subst > term > term ) > subst ).

thf(func_def_177,type,
    sK36: ( subst > term > term ) > subst ).

thf(func_def_178,type,
    sK37: ( subst > term > term ) > subst ).

thf(func_def_179,type,
    sK38: ( subst > term > term ) > term ).

thf(func_def_180,type,
    sK39: ( subst > term > term ) > subst ).

thf(func_def_181,type,
    sK40: ( subst > term > term ) > term ).

thf(func_def_182,type,
    sK41: ( subst > term > term ) > subst ).

thf(func_def_183,type,
    sK42: term ).

thf(func_def_184,type,
    sK43: term ).

thf(f1022,plain,
    $false,
    inference(trivial_inequality_removal,[],[f1021]) ).

thf(f1021,plain,
    $true = $false,
    inference(backward_demodulation,[],[f1019,f688]) ).

thf(f688,plain,
    ! [X2: term,X1: term] :
      ( $false
      = ( var @ ( ap @ X1 @ X2 ) ) ),
    inference(not_proxy_clausification,[],[f687]) ).

thf(f687,plain,
    ! [X2: term,X1: term] :
      ( $true
      = ( ~ ( var @ ( ap @ X1 @ X2 ) ) ) ),
    inference(beta_eta_normalization,[],[f686]) ).

thf(f686,plain,
    ! [X2: term,X1: term] :
      ( ( ^ [Y0: term] :
            ~ ( var @ ( ap @ X1 @ Y0 ) )
        @ X2 )
      = $true ),
    inference(pi_clausification,[],[f685]) ).

thf(f685,plain,
    ! [X1: term] :
      ( $true
      = ( !! @ term
        @ ^ [Y0: term] :
            ~ ( var @ ( ap @ X1 @ Y0 ) ) ) ),
    inference(beta_eta_normalization,[],[f684]) ).

thf(f684,plain,
    ! [X1: term] :
      ( ( ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( ap @ Y0 @ Y1 ) ) )
        @ X1 )
      = $true ),
    inference(pi_clausification,[],[f683]) ).

thf(f683,plain,
    ( $true
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f672]) ).

thf(f672,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ~ ( var @ ( lam @ Y0 ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y1 )
                           => ( ( Y0 @ Y2 )
                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( Y0 @ Y1 )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term @ Y0 ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ ( term > $o )
                      @ ^ [Y2: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                         => ( ( Y2 @ Y0 )
                           => ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y1 )
                             => ( ( Y0 @ Y2 )
                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                               => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term @ Y0 ) ) ) ) )
               => ( ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ Y0 @ id )
                          = Y0 ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                 => ( ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                    = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                      & ( !! @ term
                        @ ^ [Y0: term] :
                            ( ( sub @ Y0 @ id )
                            = Y0 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                          = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                       => ( Y3 = Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                         => ( Y3 = Y2 ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                               => ( !! @ ( subst > term > term )
                                  @ ^ [Y1: subst > term > term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                    = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                          = ( lam @ ( Y1 @ sh @ one ) ) )
                                       => ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( Y0 @ Y2 @ Y3 )
                                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( lam @ ( Y0 @ sh @ one ) )
                                           != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                             => ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f663]) ).

thf(f663,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( lam @ Y1 )
                   != ( ap @ Y0 @ Y2 ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ~ ( var @ ( lam @ Y0 ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y1 )
                             => ( ( Y0 @ Y2 )
                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( Y0 @ Y1 )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term @ Y0 ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ ( term > $o )
                        @ ^ [Y2: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                           => ( ( Y2 @ Y0 )
                             => ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y1 )
                               => ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                 => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term @ Y0 ) ) ) ) )
                 => ( ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ id @ Y0 )
                            = Y0 ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ Y0 @ id )
                            = Y0 ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                    = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                   => ( ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                      = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                        & ( !! @ term
                          @ ^ [Y0: term] :
                              ( ( sub @ Y0 @ id )
                              = Y0 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                            = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                         => ( Y3 = Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                           => ( Y3 = Y2 ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                 => ( !! @ ( subst > term > term )
                                    @ ^ [Y1: subst > term > term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                      = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                            = ( lam @ ( Y1 @ sh @ one ) ) )
                                         => ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( Y0 @ Y2 @ Y3 )
                                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                  = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( lam @ ( Y0 @ sh @ one ) )
                                             != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f654]) ).

thf(f654,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( ( sub @ Y1 @ sh )
                  = ( sub @ Y0 @ sh ) )
               => ( Y1 = Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( lam @ Y1 )
                     != ( ap @ Y0 @ Y2 ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ~ ( var @ ( lam @ Y0 ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y1 )
                               => ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( Y0 @ Y1 )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term @ Y0 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ ( term > $o )
                          @ ^ [Y2: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                             => ( ( Y2 @ Y0 )
                               => ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                   => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term @ Y0 ) ) ) ) )
                   => ( ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ id @ Y0 )
                              = Y0 ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                      = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                     => ( ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                        = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                          & ( !! @ term
                            @ ^ [Y0: term] :
                                ( ( sub @ Y0 @ id )
                                = Y0 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                              = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                           => ( Y3 = Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                             => ( Y3 = Y2 ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                   => ( !! @ ( subst > term > term )
                                      @ ^ [Y1: subst > term > term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                        = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                              = ( lam @ ( Y1 @ sh @ one ) ) )
                                           => ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( Y0 @ Y2 @ Y3 )
                                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                    = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( lam @ ( Y0 @ sh @ one ) )
                                               != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f641]) ).

thf(f641,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( ( lam @ Y1 )
                  = ( lam @ Y0 ) )
               => ( Y1 = Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( ( sub @ Y1 @ sh )
                    = ( sub @ Y0 @ sh ) )
                 => ( Y1 = Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( lam @ Y1 )
                       != ( ap @ Y0 @ Y2 ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ~ ( var @ ( lam @ Y0 ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( Y0 @ Y1 )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term @ Y0 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ ( term > $o )
                            @ ^ [Y2: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                               => ( ( Y2 @ Y0 )
                                 => ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term @ Y0 ) ) ) ) )
                     => ( ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( comp @ id @ Y0 )
                                = Y0 ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( comp @ Y0 @ id )
                                = Y0 ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                        = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                       => ( ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                          = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                            & ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ( sub @ Y0 @ id )
                                  = Y0 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                             => ( Y3 = Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                               => ( Y3 = Y2 ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                     => ( !! @ ( subst > term > term )
                                        @ ^ [Y1: subst > term > term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                          = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                = ( lam @ ( Y1 @ sh @ one ) ) )
                                             => ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( Y0 @ Y2 @ Y3 )
                                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                      = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                                 != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f628]) ).

thf(f628,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ Y3 @ Y2 )
                          = ( ap @ Y0 @ Y1 ) )
                       => ( Y2 = Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( ( lam @ Y1 )
                    = ( lam @ Y0 ) )
                 => ( Y1 = Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ( sub @ Y1 @ sh )
                      = ( sub @ Y0 @ sh ) )
                   => ( Y1 = Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( lam @ Y1 )
                         != ( ap @ Y0 @ Y2 ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ~ ( var @ ( lam @ Y0 ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term @ Y0 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ ( term > $o )
                              @ ^ [Y2: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                 => ( ( Y2 @ Y0 )
                                   => ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term @ Y0 ) ) ) ) )
                       => ( ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ id @ Y0 )
                                  = Y0 ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                         => ( ( ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                            = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                              & ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ( sub @ Y0 @ id )
                                    = Y0 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                  = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                               => ( Y3 = Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                 => ( Y3 = Y2 ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                       => ( !! @ ( subst > term > term )
                                          @ ^ [Y1: subst > term > term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                            = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                                               => ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( Y0 @ Y2 @ Y3 )
                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                                   != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f612]) ).

thf(f612,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ Y1 @ Y2 )
                          = ( ap @ Y3 @ Y0 ) )
                       => ( Y3 = Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ Y3 @ Y2 )
                            = ( ap @ Y0 @ Y1 ) )
                         => ( Y2 = Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ( lam @ Y1 )
                      = ( lam @ Y0 ) )
                   => ( Y1 = Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( ( sub @ Y1 @ sh )
                        = ( sub @ Y0 @ sh ) )
                     => ( Y1 = Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( lam @ Y1 )
                           != ( ap @ Y0 @ Y2 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ~ ( var @ ( lam @ Y0 ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term @ Y0 ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ ( term > $o )
                                @ ^ [Y2: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                   => ( ( Y2 @ Y0 )
                                     => ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                         => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term @ Y0 ) ) ) ) )
                         => ( ( ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( ( comp @ id @ Y0 )
                                    = Y0 ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( ( comp @ Y0 @ id )
                                    = Y0 ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                            = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                           => ( ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                              = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                & ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( sub @ Y0 @ id )
                                      = Y0 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                    = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                 => ( Y3 = Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                   => ( Y3 = Y2 ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                         => ( !! @ ( subst > term > term )
                                            @ ^ [Y1: subst > term > term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                              = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                               => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                    = ( lam @ ( Y1 @ sh @ one ) ) )
                                                 => ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( Y0 @ Y2 @ Y3 )
                                                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                          = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( lam @ ( Y0 @ sh @ one ) )
                                                     != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f607]) ).

thf(f607,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( Y0 @ one )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( ( Y0 @ Y1 )
                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ Y1 @ Y2 )
                            = ( ap @ Y3 @ Y0 ) )
                         => ( Y3 = Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ Y3 @ Y2 )
                              = ( ap @ Y0 @ Y1 ) )
                           => ( Y2 = Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( ( lam @ Y1 )
                        = ( lam @ Y0 ) )
                     => ( Y1 = Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( ( sub @ Y1 @ sh )
                          = ( sub @ Y0 @ sh ) )
                       => ( Y1 = Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( lam @ Y1 )
                             != ( ap @ Y0 @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ~ ( var @ ( lam @ Y0 ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term @ Y0 ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ ( term > $o )
                                  @ ^ [Y2: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                     => ( ( Y2 @ Y0 )
                                       => ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term @ Y0 ) ) ) ) )
                           => ( ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( comp @ id @ Y0 )
                                      = Y0 ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( comp @ Y0 @ id )
                                      = Y0 ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                              = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                             => ( ( ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                  & ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( ( sub @ Y0 @ id )
                                        = Y0 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                      = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                   => ( Y3 = Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                           => ( !! @ ( subst > term > term )
                                              @ ^ [Y1: subst > term > term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                                   => ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( Y0 @ Y2 @ Y3 )
                                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                            = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                                       != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f605]) ).

thf(f605,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( var @ Y0 )
           => ( var @ ( sub @ Y0 @ sh ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( Y0 @ one )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ Y1 @ Y2 )
                              = ( ap @ Y3 @ Y0 ) )
                           => ( Y3 = Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ Y3 @ Y2 )
                                = ( ap @ Y0 @ Y1 ) )
                             => ( Y2 = Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( ( lam @ Y1 )
                          = ( lam @ Y0 ) )
                       => ( Y1 = Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( ( sub @ Y1 @ sh )
                            = ( sub @ Y0 @ sh ) )
                         => ( Y1 = Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( lam @ Y1 )
                               != ( ap @ Y0 @ Y2 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ~ ( var @ ( lam @ Y0 ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term @ Y0 ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ ( term > $o )
                                    @ ^ [Y2: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                       => ( ( Y2 @ Y0 )
                                         => ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                             => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term @ Y0 ) ) ) ) )
                             => ( ( ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( ( comp @ id @ Y0 )
                                        = Y0 ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( ( comp @ Y0 @ id )
                                        = Y0 ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                               => ( ( ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                  = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                    & ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( sub @ Y0 @ id )
                                          = Y0 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                        = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                       => ( Y3 = Y2 ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                             => ( !! @ ( subst > term > term )
                                                @ ^ [Y1: subst > term > term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                  = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                        = ( lam @ ( Y1 @ sh @ one ) ) )
                                                     => ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( Y0 @ Y2 @ Y3 )
                                                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                              = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ ( Y0 @ sh @ one ) )
                                                         != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f600]) ).

thf(f600,plain,
    ( ( ( var @ one )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( var @ Y0 )
             => ( var @ ( sub @ Y0 @ sh ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( Y0 @ one )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ Y1 @ Y2 )
                                = ( ap @ Y3 @ Y0 ) )
                             => ( Y3 = Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ Y3 @ Y2 )
                                  = ( ap @ Y0 @ Y1 ) )
                               => ( Y2 = Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( ( lam @ Y1 )
                            = ( lam @ Y0 ) )
                         => ( Y1 = Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( ( sub @ Y1 @ sh )
                              = ( sub @ Y0 @ sh ) )
                           => ( Y1 = Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( lam @ Y1 )
                                 != ( ap @ Y0 @ Y2 ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ~ ( var @ ( lam @ Y0 ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term @ Y0 ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ ( term > $o )
                                      @ ^ [Y2: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                         => ( ( Y2 @ Y0 )
                                           => ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                               => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term @ Y0 ) ) ) ) )
                               => ( ( ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( ( comp @ id @ Y0 )
                                          = Y0 ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( ( comp @ Y0 @ id )
                                          = Y0 ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                 => ( ( ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                    = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                      & ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( ( sub @ Y0 @ id )
                                            = Y0 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                          = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                       => ( Y3 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                         => ( Y3 = Y2 ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                               => ( !! @ ( subst > term > term )
                                                  @ ^ [Y1: subst > term > term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                    = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                          = ( lam @ ( Y1 @ sh @ one ) ) )
                                                       => ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( Y0 @ Y2 @ Y3 )
                                                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( lam @ ( Y0 @ sh @ one ) )
                                                           != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f597]) ).

thf(f597,plain,
    ( $false
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
            = Y0 ) )
     => ( ( var @ one )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( var @ Y0 )
               => ( var @ ( sub @ Y0 @ sh ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( Y0 @ one )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ Y1 @ Y2 )
                                  = ( ap @ Y3 @ Y0 ) )
                               => ( Y3 = Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ Y3 @ Y2 )
                                    = ( ap @ Y0 @ Y1 ) )
                                 => ( Y2 = Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( ( lam @ Y1 )
                              = ( lam @ Y0 ) )
                           => ( Y1 = Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( ( sub @ Y1 @ sh )
                                = ( sub @ Y0 @ sh ) )
                             => ( Y1 = Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( lam @ Y1 )
                                   != ( ap @ Y0 @ Y2 ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ~ ( var @ ( lam @ Y0 ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term @ Y0 ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ ( term > $o )
                                        @ ^ [Y2: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                           => ( ( Y2 @ Y0 )
                                             => ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                 => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term @ Y0 ) ) ) ) )
                                 => ( ( ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( ( comp @ id @ Y0 )
                                            = Y0 ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( ( comp @ Y0 @ id )
                                            = Y0 ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                    = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                   => ( ( ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                      = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                        & ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( ( sub @ Y0 @ id )
                                              = Y0 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                            = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                         => ( Y3 = Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                           => ( Y3 = Y2 ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                 => ( !! @ ( subst > term > term )
                                                    @ ^ [Y1: subst > term > term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                      = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                            = ( lam @ ( Y1 @ sh @ one ) ) )
                                                         => ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( Y0 @ Y2 @ Y3 )
                                                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                  = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( lam @ ( Y0 @ sh @ one ) )
                                                             != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f592]) ).

thf(f592,plain,
    ( ( ( id
        = ( push @ one @ sh ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
              = Y0 ) )
       => ( ( var @ one )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( ( var @ Y0 )
                 => ( var @ ( sub @ Y0 @ sh ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( Y0 @ one )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ Y1 @ Y2 )
                                    = ( ap @ Y3 @ Y0 ) )
                                 => ( Y3 = Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ Y3 @ Y2 )
                                      = ( ap @ Y0 @ Y1 ) )
                                   => ( Y2 = Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( ( lam @ Y1 )
                                = ( lam @ Y0 ) )
                             => ( Y1 = Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( ( sub @ Y1 @ sh )
                                  = ( sub @ Y0 @ sh ) )
                               => ( Y1 = Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( lam @ Y1 )
                                     != ( ap @ Y0 @ Y2 ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ~ ( var @ ( lam @ Y0 ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term @ Y0 ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ ( term > $o )
                                          @ ^ [Y2: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                             => ( ( Y2 @ Y0 )
                                               => ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                   => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term @ Y0 ) ) ) ) )
                                   => ( ( ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( ( comp @ id @ Y0 )
                                              = Y0 ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( ( comp @ Y0 @ id )
                                              = Y0 ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                      = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                     => ( ( ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                        = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                          & ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( ( sub @ Y0 @ id )
                                                = Y0 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                              = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                           => ( Y3 = Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                             => ( Y3 = Y2 ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                   => ( !! @ ( subst > term > term )
                                                      @ ^ [Y1: subst > term > term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                        = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                              = ( lam @ ( Y1 @ sh @ one ) ) )
                                                           => ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( Y0 @ Y2 @ Y3 )
                                                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                    = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( lam @ ( Y0 @ sh @ one ) )
                                                               != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f583]) ).

thf(f583,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
     => ( ( id
          = ( push @ one @ sh ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                = Y0 ) )
         => ( ( var @ one )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( var @ Y0 )
                   => ( var @ ( sub @ Y0 @ sh ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( Y0 @ one )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ Y1 @ Y2 )
                                      = ( ap @ Y3 @ Y0 ) )
                                   => ( Y3 = Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ Y3 @ Y2 )
                                        = ( ap @ Y0 @ Y1 ) )
                                     => ( Y2 = Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( ( lam @ Y1 )
                                  = ( lam @ Y0 ) )
                               => ( Y1 = Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( ( sub @ Y1 @ sh )
                                    = ( sub @ Y0 @ sh ) )
                                 => ( Y1 = Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( lam @ Y1 )
                                       != ( ap @ Y0 @ Y2 ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ~ ( var @ ( lam @ Y0 ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term @ Y0 ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ ( term > $o )
                                            @ ^ [Y2: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                               => ( ( Y2 @ Y0 )
                                                 => ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ Y1 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term @ Y0 ) ) ) ) )
                                     => ( ( ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( ( comp @ id @ Y0 )
                                                = Y0 ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( ( comp @ Y0 @ id )
                                                = Y0 ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                        = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                       => ( ( ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                          = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                            & ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( ( sub @ Y0 @ id )
                                                  = Y0 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                             => ( Y3 = Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                               => ( Y3 = Y2 ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                     => ( !! @ ( subst > term > term )
                                                        @ ^ [Y1: subst > term > term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                          = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                = ( lam @ ( Y1 @ sh @ one ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( Y0 @ Y2 @ Y3 )
                                                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                      = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                                                 != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f574]) ).

thf(f574,plain,
    ( $false
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                    = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ Y0 @ id )
              = Y0 ) )
       => ( ( id
            = ( push @ one @ sh ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                  = Y0 ) )
           => ( ( var @ one )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( ( var @ Y0 )
                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( Y0 @ one )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ Y1 @ Y2 )
                                        = ( ap @ Y3 @ Y0 ) )
                                     => ( Y3 = Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ Y3 @ Y2 )
                                          = ( ap @ Y0 @ Y1 ) )
                                       => ( Y2 = Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( ( lam @ Y1 )
                                    = ( lam @ Y0 ) )
                                 => ( Y1 = Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( ( sub @ Y1 @ sh )
                                      = ( sub @ Y0 @ sh ) )
                                   => ( Y1 = Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( lam @ Y1 )
                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ~ ( var @ ( lam @ Y0 ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term @ Y0 ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ ( term > $o )
                                              @ ^ [Y2: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                 => ( ( Y2 @ Y0 )
                                                   => ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                       => ( ( ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( ( comp @ id @ Y0 )
                                                  = Y0 ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( ( comp @ Y0 @ id )
                                                  = Y0 ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                         => ( ( ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                            = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                              & ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( ( sub @ Y0 @ id )
                                                    = Y0 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                  = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                               => ( Y3 = Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                       => ( !! @ ( subst > term > term )
                                                          @ ^ [Y1: subst > term > term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                            = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                                                               => ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                                                   != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f567]) ).

thf(f567,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                    = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                      = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ Y0 @ id )
                = Y0 ) )
         => ( ( id
              = ( push @ one @ sh ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                    = Y0 ) )
             => ( ( var @ one )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( ( var @ Y0 )
                       => ( var @ ( sub @ Y0 @ sh ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( Y0 @ one )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ Y1 @ Y2 )
                                          = ( ap @ Y3 @ Y0 ) )
                                       => ( Y3 = Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ Y3 @ Y2 )
                                            = ( ap @ Y0 @ Y1 ) )
                                         => ( Y2 = Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( ( lam @ Y1 )
                                      = ( lam @ Y0 ) )
                                   => ( Y1 = Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( ( sub @ Y1 @ sh )
                                        = ( sub @ Y0 @ sh ) )
                                     => ( Y1 = Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( lam @ Y1 )
                                           != ( ap @ Y0 @ Y2 ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ~ ( var @ ( lam @ Y0 ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term @ Y0 ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ ( term > $o )
                                                @ ^ [Y2: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                   => ( ( Y2 @ Y0 )
                                                     => ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                         => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ Y1 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term @ Y0 ) ) ) ) )
                                         => ( ( ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( ( comp @ id @ Y0 )
                                                    = Y0 ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( ( comp @ Y0 @ id )
                                                    = Y0 ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                            = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                           => ( ( ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                              = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                & ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( ( sub @ Y0 @ id )
                                                      = Y0 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                    = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                 => ( Y3 = Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                   => ( Y3 = Y2 ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                         => ( !! @ ( subst > term > term )
                                                            @ ^ [Y1: subst > term > term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                              = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                               => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                    = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                 => ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( Y0 @ Y2 @ Y3 )
                                                                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                          = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( lam @ ( Y0 @ sh @ one ) )
                                                                     != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f562]) ).

thf(f562,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                = Y0 ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                      = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                        = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ Y0 @ id )
                  = Y0 ) )
           => ( ( id
                = ( push @ one @ sh ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                      = Y0 ) )
               => ( ( var @ one )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( ( var @ Y0 )
                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( Y0 @ one )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ Y1 @ Y2 )
                                            = ( ap @ Y3 @ Y0 ) )
                                         => ( Y3 = Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ Y3 @ Y2 )
                                              = ( ap @ Y0 @ Y1 ) )
                                           => ( Y2 = Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( ( lam @ Y1 )
                                        = ( lam @ Y0 ) )
                                     => ( Y1 = Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( ( sub @ Y1 @ sh )
                                          = ( sub @ Y0 @ sh ) )
                                       => ( Y1 = Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( lam @ Y1 )
                                             != ( ap @ Y0 @ Y2 ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ~ ( var @ ( lam @ Y0 ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ Y1 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term @ Y0 ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ ( term > $o )
                                                  @ ^ [Y2: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                     => ( ( Y2 @ Y0 )
                                                       => ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ Y1 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                           => ( ( ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( ( comp @ id @ Y0 )
                                                      = Y0 ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( ( comp @ Y0 @ id )
                                                      = Y0 ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                              = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                             => ( ( ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                  & ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( ( sub @ Y0 @ id )
                                                        = Y0 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                      = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                   => ( Y3 = Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                           => ( !! @ ( subst > term > term )
                                                              @ ^ [Y1: subst > term > term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                   => ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( Y0 @ Y2 @ Y3 )
                                                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                            = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                                                       != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f553]) ).

thf(f553,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                  = Y0 ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                        = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                          = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ Y0 @ id )
                    = Y0 ) )
             => ( ( id
                  = ( push @ one @ sh ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                        = Y0 ) )
                 => ( ( var @ one )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( ( var @ Y0 )
                           => ( var @ ( sub @ Y0 @ sh ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( Y0 @ one )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ Y1 @ Y2 )
                                              = ( ap @ Y3 @ Y0 ) )
                                           => ( Y3 = Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ Y3 @ Y2 )
                                                = ( ap @ Y0 @ Y1 ) )
                                             => ( Y2 = Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( ( lam @ Y1 )
                                          = ( lam @ Y0 ) )
                                       => ( Y1 = Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( ( sub @ Y1 @ sh )
                                            = ( sub @ Y0 @ sh ) )
                                         => ( Y1 = Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( lam @ Y1 )
                                               != ( ap @ Y0 @ Y2 ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ~ ( var @ ( lam @ Y0 ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ ( term > $o )
                                                    @ ^ [Y2: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                       => ( ( Y2 @ Y0 )
                                                         => ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                             => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ Y1 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term @ Y0 ) ) ) ) )
                                             => ( ( ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( ( comp @ id @ Y0 )
                                                        = Y0 ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( ( comp @ Y0 @ id )
                                                        = Y0 ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                               => ( ( ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                  = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                    & ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( ( sub @ Y0 @ id )
                                                          = Y0 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                        = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                       => ( Y3 = Y2 ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                             => ( !! @ ( subst > term > term )
                                                                @ ^ [Y1: subst > term > term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                  = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                        = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                     => ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( Y0 @ Y2 @ Y3 )
                                                                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                              = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( lam @ ( Y0 @ sh @ one ) )
                                                                         != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f546]) ).

thf(f546,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ id @ Y0 )
              = Y0 ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                    = Y0 ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                            = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ Y0 @ id )
                      = Y0 ) )
               => ( ( id
                    = ( push @ one @ sh ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                          = Y0 ) )
                   => ( ( var @ one )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( ( var @ Y0 )
                             => ( var @ ( sub @ Y0 @ sh ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( Y0 @ one )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ Y1 @ Y2 )
                                                = ( ap @ Y3 @ Y0 ) )
                                             => ( Y3 = Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ Y3 @ Y2 )
                                                  = ( ap @ Y0 @ Y1 ) )
                                               => ( Y2 = Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( ( lam @ Y1 )
                                            = ( lam @ Y0 ) )
                                         => ( Y1 = Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( ( sub @ Y1 @ sh )
                                              = ( sub @ Y0 @ sh ) )
                                           => ( Y1 = Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( lam @ Y1 )
                                                 != ( ap @ Y0 @ Y2 ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ~ ( var @ ( lam @ Y0 ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ Y1 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term @ Y0 ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ ( term > $o )
                                                      @ ^ [Y2: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                         => ( ( Y2 @ Y0 )
                                                           => ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                               => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ Y1 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( ( Y0 @ Y1 )
                                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term @ Y0 ) ) ) ) )
                                               => ( ( ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( ( comp @ id @ Y0 )
                                                          = Y0 ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( ( comp @ Y0 @ id )
                                                          = Y0 ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                 => ( ( ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                    = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                      & ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( ( sub @ Y0 @ id )
                                                            = Y0 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                          = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                       => ( Y3 = Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                         => ( Y3 = Y2 ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                               => ( !! @ ( subst > term > term )
                                                                  @ ^ [Y1: subst > term > term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                    = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                          = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                       => ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( Y0 @ Y2 @ Y3 )
                                                                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( lam @ ( Y0 @ sh @ one ) )
                                                                           != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f541]) ).

thf(f541,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( ( sub @ ( lam @ Y0 ) @ Y1 )
                = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                      = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ id @ Y0 )
                = Y0 ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                      = Y0 ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                            = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                              = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ Y0 @ id )
                        = Y0 ) )
                 => ( ( id
                      = ( push @ one @ sh ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                            = Y0 ) )
                     => ( ( var @ one )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( ( var @ Y0 )
                               => ( var @ ( sub @ Y0 @ sh ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( Y0 @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ Y1 @ Y2 )
                                                  = ( ap @ Y3 @ Y0 ) )
                                               => ( Y3 = Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ Y3 @ Y2 )
                                                    = ( ap @ Y0 @ Y1 ) )
                                                 => ( Y2 = Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( ( lam @ Y1 )
                                              = ( lam @ Y0 ) )
                                           => ( Y1 = Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( ( sub @ Y1 @ sh )
                                                = ( sub @ Y0 @ sh ) )
                                             => ( Y1 = Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( lam @ Y1 )
                                                   != ( ap @ Y0 @ Y2 ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ~ ( var @ ( lam @ Y0 ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ Y1 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ ( term > $o )
                                                        @ ^ [Y2: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                           => ( ( Y2 @ Y0 )
                                                             => ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term @ Y0 ) ) ) ) )
                                                 => ( ( ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( ( comp @ id @ Y0 )
                                                            = Y0 ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( ( comp @ Y0 @ id )
                                                            = Y0 ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                    = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                   => ( ( ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                      = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                        & ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( ( sub @ Y0 @ id )
                                                              = Y0 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                            = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                         => ( Y3 = Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                           => ( Y3 = Y2 ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                 => ( !! @ ( subst > term > term )
                                                                    @ ^ [Y1: subst > term > term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                      = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                            = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                         => ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( Y0 @ Y2 @ Y3 )
                                                                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                  = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( lam @ ( Y0 @ sh @ one ) )
                                                                             != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f534]) ).

thf(f534,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( ( sub @ ( lam @ Y0 ) @ Y1 )
                  = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                        = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ id @ Y0 )
                  = Y0 ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                        = Y0 ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                              = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                                = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ Y0 @ id )
                          = Y0 ) )
                   => ( ( id
                        = ( push @ one @ sh ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                              = Y0 ) )
                       => ( ( var @ one )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ( var @ Y0 )
                                 => ( var @ ( sub @ Y0 @ sh ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( Y0 @ one )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ Y1 @ Y2 )
                                                    = ( ap @ Y3 @ Y0 ) )
                                                 => ( Y3 = Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ Y3 @ Y2 )
                                                      = ( ap @ Y0 @ Y1 ) )
                                                   => ( Y2 = Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( ( lam @ Y1 )
                                                = ( lam @ Y0 ) )
                                             => ( Y1 = Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( ( sub @ Y1 @ sh )
                                                  = ( sub @ Y0 @ sh ) )
                                               => ( Y1 = Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( lam @ Y1 )
                                                     != ( ap @ Y0 @ Y2 ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ~ ( var @ ( lam @ Y0 ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ Y1 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term @ Y0 ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ ( term > $o )
                                                          @ ^ [Y2: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                             => ( ( Y2 @ Y0 )
                                                               => ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                   => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ Y1 )
                                                               => ( Y0 @ Y1 ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( ( Y0 @ Y1 )
                                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ term @ Y0 ) ) ) ) )
                                                   => ( ( ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( ( comp @ id @ Y0 )
                                                              = Y0 ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( ( comp @ Y0 @ id )
                                                              = Y0 ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                      = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                     => ( ( ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                        = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                          & ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( ( sub @ Y0 @ id )
                                                                = Y0 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                              = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                           => ( Y3 = Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                             => ( Y3 = Y2 ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                   => ( !! @ ( subst > term > term )
                                                                      @ ^ [Y1: subst > term > term] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                        = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                              = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                           => ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( Y0 @ Y2 @ Y3 )
                                                                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                    = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( lam @ ( Y0 @ sh @ one ) )
                                                                               != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f525]) ).

thf(f525,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( ( sub @ one @ ( push @ Y0 @ Y1 ) )
                = Y0 ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( sub @ Y0 @ id )
              = Y0 ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( ( sub @ ( lam @ Y0 ) @ Y1 )
                    = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                          = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ id @ Y0 )
                    = Y0 ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                          = Y0 ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                                  = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ Y0 @ id )
                            = Y0 ) )
                     => ( ( id
                          = ( push @ one @ sh ) )
                       => ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                = Y0 ) )
                         => ( ( var @ one )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ( var @ Y0 )
                                   => ( var @ ( sub @ Y0 @ sh ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( Y0 @ one )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ Y1 @ Y2 )
                                                      = ( ap @ Y3 @ Y0 ) )
                                                   => ( Y3 = Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y3 @ Y2 )
                                                        = ( ap @ Y0 @ Y1 ) )
                                                     => ( Y2 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( ( lam @ Y1 )
                                                  = ( lam @ Y0 ) )
                                               => ( Y1 = Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( sub @ Y1 @ sh )
                                                    = ( sub @ Y0 @ sh ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( lam @ Y1 )
                                                       != ( ap @ Y0 @ Y2 ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ~ ( var @ ( lam @ Y0 ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ Y1 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term @ Y0 ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ ( term > $o )
                                                            @ ^ [Y2: term > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                               => ( ( Y2 @ Y0 )
                                                                 => ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y1 )
                                                                   => ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term @ Y0 ) ) ) ) )
                                                     => ( ( ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( ( comp @ id @ Y0 )
                                                                = Y0 ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( ( comp @ Y0 @ id )
                                                                = Y0 ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                        = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                          = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                            & ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( ( sub @ Y0 @ id )
                                                                  = Y0 ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                                = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                             => ( Y3 = Y1 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                               => ( Y3 = Y2 ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                     => ( !! @ ( subst > term > term )
                                                                        @ ^ [Y1: subst > term > term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                          = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                             => ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( ( Y0 @ Y2 @ Y3 )
                                                                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                 != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f524]) ).

thf(f524,plain,
    ( $true
   != ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ ( ap @ Y1 @ Y0 ) @ Y2 )
                    = ( ap @ ( sub @ Y1 @ Y2 ) @ ( sub @ Y0 @ Y2 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( ( sub @ one @ ( push @ Y0 @ Y1 ) )
                  = Y0 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( ( sub @ ( lam @ Y0 ) @ Y1 )
                      = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                                    = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y1 @ Y2 )
                                                        = ( ap @ Y3 @ Y0 ) )
                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y3 @ Y2 )
                                                          = ( ap @ Y0 @ Y1 ) )
                                                       => ( Y2 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y1 )
                                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y1 )
                                                                   => ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term @ Y0 ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ ( term > $o )
                                                              @ ^ [Y2: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( ( Y2 @ Y0 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                         => ( ( ( !! @ subst
                                                                @ ^ [Y0: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                            = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                              & ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                                                                  = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                                                               => ( Y3 = Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                            = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                               => ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                   != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(beta_eta_normalization,[],[f523]) ).

thf(f523,plain,
    ( $true
   != ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ ( ap @ Y1 @ Y0 ) @ Y2 )
                    = ( ap @ ( sub @ Y1 @ Y2 ) @ ( sub @ Y0 @ Y2 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( ( sub @ one @ ( push @ Y0 @ Y1 ) )
                  = Y0 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( ( sub @ ( lam @ Y0 ) @ Y1 )
                      = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                                    = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y1 @ Y2 )
                                                        = ( ap @ Y3 @ Y0 ) )
                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y3 @ Y2 )
                                                          = ( ap @ Y0 @ Y1 ) )
                                                       => ( Y2 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y1 )
                                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y1 )
                                                                   => ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ ( term > $o )
                                                              @ ^ [Y2: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( ( Y2 @ Y0 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                         => ( ( ( !! @ subst
                                                                @ ^ [Y0: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                            = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                              & ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y3
                                                                                    @ id
                                                                                    @ Y0 )
                                                                                  = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y1
                                                                                    @ id
                                                                                    @ Y2 ) )
                                                                               => ( Y3 = Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y1
                                                                                      @ id
                                                                                      @ Y3 )
                                                                                    = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y0
                                                                                      @ id
                                                                                      @ Y2 ) )
                                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                            = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                             => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                                                                                  = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                                                                               => ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                                                                                      @ id
                                                                                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                                                                                   != ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                      @ id
                                                                                      @ Y2
                                                                                      @ id
                                                                                      @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
                                                                                @ id
                                                                                @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                                                                                  @ id
                                                                                  @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
                                                                                @ id ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                  @ id
                                                                                  @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                                                                                    @ id
                                                                                    @ Y0
                                                                                    @ id
                                                                                    @ Y1 )
                                                                                  @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f393,f458]) ).

thf(f458,plain,
    ( hoasapnotvar_gthm
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ ( ap @ Y1 @ Y0 ) @ Y2 )
                    = ( ap @ ( sub @ Y1 @ Y2 ) @ ( sub @ Y0 @ Y2 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( ( sub @ one @ ( push @ Y0 @ Y1 ) )
                  = Y0 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( ( sub @ ( lam @ Y0 ) @ Y1 )
                      = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                                    = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y1 @ Y2 )
                                                        = ( ap @ Y3 @ Y0 ) )
                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y3 @ Y2 )
                                                          = ( ap @ Y0 @ Y1 ) )
                                                       => ( Y2 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y1 )
                                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y1 )
                                                                   => ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ ( term > $o )
                                                              @ ^ [Y2: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( ( Y2 @ Y0 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                                                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
                                                         => ( ( ( !! @ subst
                                                                @ ^ [Y0: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                                                            = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                                                              & ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y3
                                                                                    @ id
                                                                                    @ Y0 )
                                                                                  = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y1
                                                                                    @ id
                                                                                    @ Y2 ) )
                                                                               => ( Y3 = Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y1
                                                                                      @ id
                                                                                      @ Y3 )
                                                                                    = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y0
                                                                                      @ id
                                                                                      @ Y2 ) )
                                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                                                            = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                                                             => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                                                                                  = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                                                                               => ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                                                                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                                                                                      @ id
                                                                                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                                                                                   != ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                      @ id
                                                                                      @ Y2
                                                                                      @ id
                                                                                      @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
                                                                                @ id
                                                                                @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                                                                                  @ id
                                                                                  @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
                                                                                @ id ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                  @ id
                                                                                  @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                                                                                    @ id
                                                                                    @ Y0
                                                                                    @ id
                                                                                    @ Y1 )
                                                                                  @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f433,f336,f382,f422,f361,f351,f379,f360,f420,f427,f343,f428,f437,f344,f397,f431,f339,f358,f429,f348,f406,f412,f371,f333,f338,f340,f381,f405,f445,f451,f452,f453,f454,f455,f456]) ).

thf(f456,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                @ id
                @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                  @ id
                  @ Y0
                  @ id
                  @ Y1 )
                @ id ) ) ) ),
    inference(definition_unfolding,[],[f411,f404,f407]) ).

thf(f407,plain,
    ( hoasap
    = ( ^ [Y0: subst,Y1: term,Y2: subst,Y3: term] : ( ap @ ( sub @ Y1 @ Y2 ) @ Y3 ) ) ),
    inference(cnf_transformation,[],[f142]) ).

thf(f142,plain,
    ( hoasap
    = ( ^ [Y0: subst,Y1: term,Y2: subst,Y3: term] : ( ap @ ( sub @ Y1 @ Y2 ) @ Y3 ) ) ),
    inference(fool_elimination,[],[f141]) ).

thf(f141,plain,
    ( ( ^ [X0: subst,X1: term,X2: subst,X3: term] : ( ap @ ( sub @ X1 @ X2 ) @ X3 ) )
    = hoasap ),
    inference(rectify,[],[f55]) ).

thf(f55,axiom,
    ( ( ^ [X2: subst,X0: term,X3: subst,X1: term] : ( ap @ ( sub @ X0 @ X3 ) @ X1 ) )
    = hoasap ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoasap) ).

thf(f404,plain,
    ( hoasvar
    = ( ^ [Y0: subst,Y1: term,Y2: subst] : ( var @ ( sub @ Y1 @ Y2 ) ) ) ),
    inference(cnf_transformation,[],[f138]) ).

thf(f138,plain,
    ( hoasvar
    = ( ^ [Y0: subst,Y1: term,Y2: subst] : ( var @ ( sub @ Y1 @ Y2 ) ) ) ),
    inference(fool_elimination,[],[f137]) ).

thf(f137,plain,
    ( ( ^ [X0: subst,X1: term,X2: subst] : ( var @ ( sub @ X1 @ X2 ) ) )
    = hoasvar ),
    inference(rectify,[],[f57]) ).

thf(f57,axiom,
    ( ( ^ [X2: subst,X0: term,X3: subst] : ( var @ ( sub @ X0 @ X3 ) ) )
    = hoasvar ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoasvar) ).

thf(f411,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( hoasvar @ id @ ( hoasap @ id @ Y0 @ id @ Y1 ) @ id ) ) ) ),
    inference(cnf_transformation,[],[f330]) ).

thf(f330,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( hoasvar @ id @ ( hoasap @ id @ Y0 @ id @ Y1 ) @ id ) ) ) ),
    inference(fool_elimination,[],[f329]) ).

thf(f329,plain,
    ( hoasapnotvar
    = ( ! [X0: term,X1: term] :
          ~ ( hoasvar @ id @ ( hoasap @ id @ X1 @ id @ X0 ) @ id ) ) ),
    inference(rectify,[],[f73]) ).

thf(f73,axiom,
    ( hoasapnotvar
    = ( ! [X1: term,X0: term] :
          ~ ( hoasvar @ id @ ( hoasap @ id @ X0 @ id @ X1 ) @ id ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoasapnotvar) ).

thf(f455,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
              @ id
              @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(definition_unfolding,[],[f416,f404,f421]) ).

thf(f421,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( lam @ ( Y1 @ sh @ one ) ) ) ),
    inference(cnf_transformation,[],[f158]) ).

thf(f158,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( lam @ ( Y1 @ sh @ one ) ) ) ),
    inference(fool_elimination,[],[f157]) ).

thf(f157,plain,
    ( hoaslam
    = ( ^ [X0: subst,X1: subst > term > term] : ( lam @ ( X1 @ sh @ one ) ) ) ),
    inference(rectify,[],[f56]) ).

thf(f56,axiom,
    ( hoaslam
    = ( ^ [X2: subst,X10: subst > term > term] : ( lam @ ( X10 @ sh @ one ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoaslam) ).

thf(f416,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(cnf_transformation,[],[f176]) ).

thf(f176,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(fool_elimination,[],[f175]) ).

thf(f175,plain,
    ( hoaslamnotvar
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: term,X3: subst] :
              ( ( X0 @ ( comp @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) )
              = ( sub @ ( X0 @ X1 @ X2 ) @ X3 ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [X4: subst,X5: term] : ( X0 @ X4 @ X5 ) )
              @ id ) ) ) ),
    inference(rectify,[],[f70]) ).

thf(f70,axiom,
    ( hoaslamnotvar
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X0: term,X3: subst] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [X2: subst,X0: term] : ( X10 @ X2 @ X0 ) )
              @ id ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoaslamnotvar) ).

thf(f454,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                      @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                   != ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                      @ id
                      @ Y2
                      @ id
                      @ Y1 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f402,f421,f407]) ).

thf(f402,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( hoaslam @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                   != ( hoasap @ id @ Y2 @ id @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f213]) ).

thf(f213,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( hoaslam @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                   != ( hoasap @ id @ Y2 @ id @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f212]) ).

thf(f212,plain,
    ( hoaslamnotap
    = ( ! [X0: subst > term > term] :
          ( ! [X1: term,X2: subst,X3: subst] :
              ( ( X0 @ ( comp @ X2 @ X3 ) @ ( sub @ X1 @ X3 ) )
              = ( sub @ ( X0 @ X2 @ X1 ) @ X3 ) )
         => ! [X4: term,X5: term] :
              ( ( hoaslam @ id
                @ ^ [X6: subst,X7: term] : ( X0 @ X6 @ X7 ) )
             != ( hoasap @ id @ X4 @ id @ X5 ) ) ) ) ),
    inference(rectify,[],[f67]) ).

thf(f67,axiom,
    ( hoaslamnotap
    = ( ! [X10: subst > term > term] :
          ( ! [X0: term,X2: subst,X3: subst] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ! [X0: term,X1: term] :
              ( ( hoaslam @ id
                @ ^ [X2: subst,X6: term] : ( X10 @ X2 @ X6 ) )
             != ( hoasap @ id @ X0 @ id @ X1 ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoaslamnotap) ).

thf(f453,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
               => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                      @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                    = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                      @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                 => ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ Y2 @ Y3 )
                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f389,f421,f421]) ).

thf(f389,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
               => ( ( ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                    = ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                 => ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ Y2 @ Y3 )
                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f233]) ).

thf(f233,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                              = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
               => ( ( ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                    = ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                 => ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ Y2 @ Y3 )
                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f232]) ).

thf(f232,plain,
    ( hoaslaminj
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: term,X3: subst] :
              ( ( X0 @ ( comp @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) )
              = ( sub @ ( X0 @ X1 @ X2 ) @ X3 ) )
         => ! [X4: subst > term > term] :
              ( ! [X5: subst,X6: subst,X7: term] :
                  ( ( X4 @ ( comp @ X6 @ X5 ) @ ( sub @ X7 @ X5 ) )
                  = ( sub @ ( X4 @ X6 @ X7 ) @ X5 ) )
             => ( ( ( hoaslam @ id
                    @ ^ [X8: subst,X9: term] : ( X0 @ X8 @ X9 ) )
                  = ( hoaslam @ id
                    @ ^ [X10: subst,X11: term] : ( X4 @ X10 @ X11 ) ) )
               => ! [X12: term,X13: subst] :
                    ( ( X0 @ X13 @ X12 )
                    = ( X4 @ X13 @ X12 ) ) ) ) ) ) ),
    inference(rectify,[],[f64]) ).

thf(f64,axiom,
    ( hoaslaminj
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X0: term,X3: subst] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ! [X11: subst > term > term] :
              ( ! [X3: subst,X2: subst,X0: term] :
                  ( ( sub @ ( X11 @ X2 @ X0 ) @ X3 )
                  = ( X11 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
             => ( ( ( hoaslam @ id
                    @ ^ [X2: subst,X0: term] : ( X10 @ X2 @ X0 ) )
                  = ( hoaslam @ id
                    @ ^ [X2: subst,X0: term] : ( X11 @ X2 @ X0 ) ) )
               => ! [X0: term,X2: subst] :
                    ( ( X10 @ X2 @ X0 )
                    = ( X11 @ X2 @ X0 ) ) ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoaslaminj) ).

thf(f452,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y1
                          @ id
                          @ Y3 )
                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y0
                          @ id
                          @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f365,f407,f407]) ).

thf(f365,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y1 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f286]) ).

thf(f286,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y1 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f285]) ).

thf(f285,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( hoasap @ id @ X2 @ id @ X0 )
          = ( hoasap @ id @ X3 @ id @ X1 ) )
       => ( X0 = X1 ) )
      = hoasapinj2 ),
    inference(rectify,[],[f61]) ).

thf(f61,axiom,
    ! [X6: term,X7: term,X0: term,X1: term] :
      ( ( ( ( hoasap @ id @ X0 @ id @ X6 )
          = ( hoasap @ id @ X1 @ id @ X7 ) )
       => ( X6 = X7 ) )
      = hoasapinj2 ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoasapinj2) ).

thf(f451,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y3
                          @ id
                          @ Y0 )
                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y1
                          @ id
                          @ Y2 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f376,f407,f407]) ).

thf(f376,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y3 @ id @ Y0 )
                        = ( hoasap @ id @ Y1 @ id @ Y2 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f126]) ).

thf(f126,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y3 @ id @ Y0 )
                        = ( hoasap @ id @ Y1 @ id @ Y2 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f125]) ).

thf(f125,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( hoasap @ id @ X0 @ id @ X3 )
          = ( hoasap @ id @ X2 @ id @ X1 ) )
       => ( X0 = X2 ) )
      = hoasapinj1 ),
    inference(rectify,[],[f58]) ).

thf(f58,axiom,
    ! [X0: term,X7: term,X1: term,X6: term] :
      ( ( ( ( hoasap @ id @ X0 @ id @ X6 )
          = ( hoasap @ id @ X1 @ id @ X7 ) )
       => ( X0 = X1 ) )
      = hoasapinj1 ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoasapinj1) ).

thf(f445,plain,
    ( termmset
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                    = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
      & ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f318]) ).

thf(f318,plain,
    ( termmset
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                    = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
      & ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) ) ) ),
    inference(fool_elimination,[],[f317]) ).

thf(f317,plain,
    ( ( termmset
      = ( ! [X0: term] :
            ( ( sub @ X0 @ id )
            = X0 ) ) )
    & ! [X1: term,X2: subst,X3: subst] :
        ( ( sub @ X1 @ ( comp @ X2 @ X3 ) )
        = ( sub @ ( sub @ X1 @ X2 ) @ X3 ) ) ),
    inference(rectify,[],[f52]) ).

thf(f52,axiom,
    ( ( termmset
      = ( ! [X0: term] :
            ( ( sub @ X0 @ id )
            = X0 ) ) )
    & ! [X0: term,X2: subst,X3: subst] :
        ( ( sub @ ( sub @ X0 @ X2 ) @ X3 )
        = ( sub @ X0 @ ( comp @ X2 @ X3 ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',termmset) ).

thf(f405,plain,
    ( substmonoid
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                    = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f202]) ).

thf(f202,plain,
    ( substmonoid
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                    = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f201]) ).

thf(f201,plain,
    ( ( substmonoid
      = ( ! [X0: subst,X1: subst,X2: subst] :
            ( ( comp @ ( comp @ X0 @ X1 ) @ X2 )
            = ( comp @ X0 @ ( comp @ X1 @ X2 ) ) ) ) )
    & ! [X3: subst] :
        ( ( comp @ X3 @ id )
        = X3 )
    & ! [X4: subst] :
        ( ( comp @ id @ X4 )
        = X4 ) ),
    inference(rectify,[],[f49]) ).

thf(f49,axiom,
    ( ( substmonoid
      = ( ! [X2: subst,X3: subst,X4: subst] :
            ( ( comp @ ( comp @ X2 @ X3 ) @ X4 )
            = ( comp @ X2 @ ( comp @ X3 @ X4 ) ) ) ) )
    & ! [X2: subst] :
        ( ( comp @ X2 @ id )
        = X2 )
    & ! [X2: subst] :
        ( ( comp @ id @ X2 )
        = X2 ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',substmonoid) ).

thf(f381,plain,
    ( induction2
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f257]) ).

thf(f257,plain,
    ( induction2
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f256]) ).

thf(f256,plain,
    ! [X0: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X0 @ X1 ) )
       => ( ! [X2: term,X3: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X3 )
               => ( X0 @ ( ap @ X2 @ X3 ) ) ) )
         => ( ! [X4: term] :
                ( ! [X5: term] :
                    ( ( X0 @ X5 )
                   => ( X0 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
               => ( X0 @ ( lam @ X4 ) ) )
           => ! [X6: term] : ( X0 @ X6 ) ) ) )
      = induction2 ),
    inference(rectify,[],[f46]) ).

thf(f46,axiom,
    ! [X5: term > $o] :
      ( ( ! [X0: term] :
            ( ( var @ X0 )
           => ( X5 @ X0 ) )
       => ( ! [X0: term,X1: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ! [X1: term] :
                    ( ( X5 @ X1 )
                   => ( X5 @ ( sub @ X0 @ ( push @ X1 @ id ) ) ) )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term] : ( X5 @ X0 ) ) ) )
      = induction2 ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',induction2) ).

thf(f340,plain,
    ( induction2lem
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( Y0 @ Y1 )
                   => ( ( Y0 @ Y2 )
                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                 => ( Y0 @ ( lam @ Y1 ) ) ) )
           => ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f249]) ).

thf(f249,plain,
    ( induction2lem
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( Y0 @ Y1 )
                   => ( ( Y0 @ Y2 )
                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                 => ( Y0 @ ( lam @ Y1 ) ) ) )
           => ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f248]) ).

thf(f248,plain,
    ( induction2lem
    = ( ! [X0: term > $o] :
          ( ! [X1: term,X2: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X1 )
               => ( X0 @ ( ap @ X2 @ X1 ) ) ) )
         => ( ! [X3: term] :
                ( ! [X4: term] :
                    ( ( X0 @ X4 )
                   => ( X0 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
               => ( X0 @ ( lam @ X3 ) ) )
           => ! [X5: term,X6: subst] :
                ( ! [X7: term] :
                    ( ( var @ X7 )
                   => ( X0 @ ( sub @ X7 @ X6 ) ) )
               => ( X0 @ ( sub @ X5 @ X6 ) ) ) ) ) ) ),
    inference(rectify,[],[f43]) ).

thf(f43,axiom,
    ( induction2lem
    = ( ! [X5: term > $o] :
          ( ! [X1: term,X0: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ! [X1: term] :
                    ( ( X5 @ X1 )
                   => ( X5 @ ( sub @ X0 @ ( push @ X1 @ id ) ) ) )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term,X2: subst] :
                ( ! [X1: term] :
                    ( ( var @ X1 )
                   => ( X5 @ ( sub @ X1 @ X2 ) ) )
               => ( X5 @ ( sub @ X0 @ X2 ) ) ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',induction2lem) ).

thf(f338,plain,
    ( pushprop
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ ( term > $o )
              @ ^ [Y2: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( var @ Y3 )
                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                 => ( ( Y2 @ Y0 )
                   => ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f184]) ).

thf(f184,plain,
    ( pushprop
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ ( term > $o )
              @ ^ [Y2: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( var @ Y3 )
                       => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                 => ( ( Y2 @ Y0 )
                   => ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f183]) ).

thf(f183,plain,
    ( pushprop
    = ( ! [X0: term > $o,X1: subst,X2: term] :
          ( ! [X3: term] :
              ( ( var @ X3 )
             => ( X0 @ ( sub @ X3 @ X1 ) ) )
         => ( ( X0 @ X2 )
           => ! [X4: term] :
                ( ( var @ X4 )
               => ( X0 @ ( sub @ X4 @ ( push @ X2 @ X1 ) ) ) ) ) ) ) ),
    inference(rectify,[],[f39]) ).

thf(f39,axiom,
    ( pushprop
    = ( ! [X5: term > $o,X2: subst,X0: term] :
          ( ! [X1: term] :
              ( ( var @ X1 )
             => ( X5 @ ( sub @ X1 @ X2 ) ) )
         => ( ( X5 @ X0 )
           => ! [X1: term] :
                ( ( var @ X1 )
               => ( X5 @ ( sub @ X1 @ ( push @ X0 @ X2 ) ) ) ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',pushprop) ).

thf(f333,plain,
    ( induction
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y1 )
                     => ( ( Y0 @ Y2 )
                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( Y0 @ Y1 )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f300]) ).

thf(f300,plain,
    ( induction
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y1 )
                     => ( ( Y0 @ Y2 )
                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( Y0 @ Y1 )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f299]) ).

thf(f299,plain,
    ! [X0: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X0 @ X1 ) )
       => ( ! [X2: term,X3: term] :
              ( ( X0 @ X3 )
             => ( ( X0 @ X2 )
               => ( X0 @ ( ap @ X3 @ X2 ) ) ) )
         => ( ! [X4: term] :
                ( ( X0 @ X4 )
               => ( X0 @ ( lam @ X4 ) ) )
           => ! [X5: term] : ( X0 @ X5 ) ) ) )
      = induction ),
    inference(rectify,[],[f23]) ).

thf(f23,axiom,
    ! [X5: term > $o] :
      ( ( ! [X0: term] :
            ( ( var @ X0 )
           => ( X5 @ X0 ) )
       => ( ! [X1: term,X0: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ( X5 @ X0 )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term] : ( X5 @ X0 ) ) ) )
      = induction ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',induction) ).

thf(f371,plain,
    ( lamnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( lam @ Y0 ) ) ) ),
    inference(cnf_transformation,[],[f198]) ).

thf(f198,plain,
    ( lamnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( lam @ Y0 ) ) ) ),
    inference(fool_elimination,[],[f197]) ).

thf(f197,plain,
    ! [X0: term] :
      ( ( ~ ( var @ ( lam @ X0 ) ) )
      = lamnotvar ),
    inference(rectify,[],[f22]) ).

thf(f22,axiom,
    ! [X0: term] :
      ( ( ~ ( var @ ( lam @ X0 ) ) )
      = lamnotvar ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',lamnotvar) ).

thf(f412,plain,
    ( apnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) ) ),
    inference(cnf_transformation,[],[f298]) ).

thf(f298,plain,
    ( apnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y0 @ Y1 ) ) ) ) ),
    inference(fool_elimination,[],[f297]) ).

thf(f297,plain,
    ( apnotvar
    = ( ! [X0: term,X1: term] :
          ~ ( var @ ( ap @ X1 @ X0 ) ) ) ),
    inference(rectify,[],[f21]) ).

thf(f21,axiom,
    ( apnotvar
    = ( ! [X1: term,X0: term] :
          ~ ( var @ ( ap @ X0 @ X1 ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',apnotvar) ).

thf(f406,plain,
    ( lamnotap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( lam @ Y1 )
                 != ( ap @ Y0 @ Y2 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f272]) ).

thf(f272,plain,
    ( lamnotap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( lam @ Y1 )
                 != ( ap @ Y0 @ Y2 ) ) ) ) ) ),
    inference(fool_elimination,[],[f271]) ).

thf(f271,plain,
    ! [X0: term,X1: term,X2: term] :
      ( ( ( lam @ X1 )
       != ( ap @ X2 @ X0 ) )
      = lamnotap ),
    inference(rectify,[],[f20]) ).

thf(f20,axiom,
    ! [X6: term,X0: term,X1: term] :
      ( ( ( lam @ X0 )
       != ( ap @ X1 @ X6 ) )
      = lamnotap ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',lamnotap) ).

thf(f348,plain,
    ( shinj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( sub @ Y1 @ sh )
                = ( sub @ Y0 @ sh ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f243]) ).

thf(f243,plain,
    ( shinj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( sub @ Y1 @ sh )
                = ( sub @ Y0 @ sh ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f242]) ).

thf(f242,plain,
    ( shinj
    = ( ! [X0: term,X1: term] :
          ( ( ( sub @ X0 @ sh )
            = ( sub @ X1 @ sh ) )
         => ( X0 = X1 ) ) ) ),
    inference(rectify,[],[f19]) ).

thf(f19,axiom,
    ( shinj
    = ( ! [X1: term,X0: term] :
          ( ( ( sub @ X0 @ sh )
            = ( sub @ X1 @ sh ) )
         => ( X0 = X1 ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',shinj) ).

thf(f429,plain,
    ( laminj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( lam @ Y1 )
                = ( lam @ Y0 ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f255]) ).

thf(f255,plain,
    ( laminj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( lam @ Y1 )
                = ( lam @ Y0 ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f254]) ).

thf(f254,plain,
    ! [X0: term,X1: term] :
      ( ( ( ( lam @ X0 )
          = ( lam @ X1 ) )
       => ( X0 = X1 ) )
      = laminj ),
    inference(rectify,[],[f18]) ).

thf(f18,axiom,
    ! [X1: term,X0: term] :
      ( ( ( ( lam @ X0 )
          = ( lam @ X1 ) )
       => ( X0 = X1 ) )
      = laminj ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',laminj) ).

thf(f358,plain,
    ( apinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y3 @ Y2 )
                        = ( ap @ Y0 @ Y1 ) )
                     => ( Y2 = Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f308]) ).

thf(f308,plain,
    ( apinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y3 @ Y2 )
                        = ( ap @ Y0 @ Y1 ) )
                     => ( Y2 = Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f307]) ).

thf(f307,plain,
    ( apinj2
    = ( ! [X0: term,X1: term,X2: term,X3: term] :
          ( ( ( ap @ X0 @ X1 )
            = ( ap @ X3 @ X2 ) )
         => ( X1 = X2 ) ) ) ),
    inference(rectify,[],[f17]) ).

thf(f17,axiom,
    ( apinj2
    = ( ! [X0: term,X6: term,X7: term,X1: term] :
          ( ( ( ap @ X0 @ X6 )
            = ( ap @ X1 @ X7 ) )
         => ( X6 = X7 ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',apinj2) ).

thf(f339,plain,
    ( apinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y1 @ Y2 )
                        = ( ap @ Y3 @ Y0 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f194]) ).

thf(f194,plain,
    ( apinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y1 @ Y2 )
                        = ( ap @ Y3 @ Y0 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f193]) ).

thf(f193,plain,
    ( apinj1
    = ( ! [X0: term,X1: term,X2: term,X3: term] :
          ( ( ( ap @ X2 @ X1 )
            = ( ap @ X0 @ X3 ) )
         => ( X0 = X2 ) ) ) ),
    inference(rectify,[],[f16]) ).

thf(f16,axiom,
    ( apinj1
    = ( ! [X1: term,X6: term,X0: term,X7: term] :
          ( ( ( ap @ X0 @ X6 )
            = ( ap @ X1 @ X7 ) )
         => ( X0 = X1 ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',apinj1) ).

thf(f431,plain,
    ( ulamvarind
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( Y0 @ one )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( ( Y0 @ Y1 )
                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f227]) ).

thf(f227,plain,
    ( ulamvarind
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( Y0 @ one )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( ( Y0 @ Y1 )
                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f226]) ).

thf(f226,plain,
    ( ulamvarind
    = ( ! [X0: term > $o] :
          ( ( X0 @ one )
         => ( ! [X1: term] :
                ( ( var @ X1 )
               => ( ( X0 @ X1 )
                 => ( X0 @ ( sub @ X1 @ sh ) ) ) )
           => ! [X2: term] :
                ( ( var @ X2 )
               => ( X0 @ X2 ) ) ) ) ) ),
    inference(rectify,[],[f15]) ).

thf(f15,axiom,
    ( ulamvarind
    = ( ! [X5: term > $o] :
          ( ( X5 @ one )
         => ( ! [X0: term] :
                ( ( var @ X0 )
               => ( ( X5 @ X0 )
                 => ( X5 @ ( sub @ X0 @ sh ) ) ) )
           => ! [X0: term] :
                ( ( var @ X0 )
               => ( X5 @ X0 ) ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',ulamvarind) ).

thf(f397,plain,
    ( ulamvarsh
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( var @ Y0 )
         => ( var @ ( sub @ Y0 @ sh ) ) ) ) ),
    inference(cnf_transformation,[],[f219]) ).

thf(f219,plain,
    ( ulamvarsh
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( var @ Y0 )
         => ( var @ ( sub @ Y0 @ sh ) ) ) ) ),
    inference(fool_elimination,[],[f218]) ).

thf(f218,plain,
    ( ulamvarsh
    = ( ! [X0: term] :
          ( ( var @ X0 )
         => ( var @ ( sub @ X0 @ sh ) ) ) ) ),
    inference(rectify,[],[f14]) ).

thf(f14,axiom,
    ( ulamvarsh
    = ( ! [X0: term] :
          ( ( var @ X0 )
         => ( var @ ( sub @ X0 @ sh ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',ulamvarsh) ).

thf(f344,plain,
    ( ulamvar1
    = ( var @ one ) ),
    inference(cnf_transformation,[],[f13]) ).

thf(f13,axiom,
    ( ulamvar1
    = ( var @ one ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',ulamvar1) ).

thf(f437,plain,
    ( axscons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f136]) ).

thf(f136,plain,
    ( axscons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f135]) ).

thf(f135,plain,
    ( axscons
    = ( ! [X0: subst] :
          ( ( push @ ( sub @ one @ X0 ) @ ( comp @ sh @ X0 ) )
          = X0 ) ) ),
    inference(rectify,[],[f12]) ).

thf(f12,axiom,
    ( axscons
    = ( ! [X2: subst] :
          ( ( push @ ( sub @ one @ X2 ) @ ( comp @ sh @ X2 ) )
          = X2 ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axscons) ).

thf(f428,plain,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(cnf_transformation,[],[f209]) ).

thf(f209,plain,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(fool_elimination,[],[f11]) ).

thf(f11,axiom,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axvarshift) ).

thf(f343,plain,
    ( axidr
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ Y0 @ id )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f316]) ).

thf(f316,plain,
    ( axidr
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ Y0 @ id )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f315]) ).

thf(f315,plain,
    ! [X0: subst] :
      ( ( ( comp @ X0 @ id )
        = X0 )
      = axidr ),
    inference(rectify,[],[f10]) ).

thf(f10,axiom,
    ! [X2: subst] :
      ( ( ( comp @ X2 @ id )
        = X2 )
      = axidr ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axidr) ).

thf(f427,plain,
    ( axmap
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                  = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f225]) ).

thf(f225,plain,
    ( axmap
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( push @ ( sub @ Y1 @ Y0 ) @ ( comp @ Y2 @ Y0 ) )
                  = ( comp @ ( push @ Y1 @ Y2 ) @ Y0 ) ) ) ) ) ),
    inference(fool_elimination,[],[f224]) ).

thf(f224,plain,
    ! [X0: subst,X1: term,X2: subst] :
      ( ( ( push @ ( sub @ X1 @ X2 ) @ ( comp @ X0 @ X2 ) )
        = ( comp @ ( push @ X1 @ X0 ) @ X2 ) )
      = axmap ),
    inference(rectify,[],[f9]) ).

thf(f9,axiom,
    ! [X2: subst,X0: term,X3: subst] :
      ( ( ( comp @ ( push @ X0 @ X2 ) @ X3 )
        = ( push @ ( sub @ X0 @ X3 ) @ ( comp @ X2 @ X3 ) ) )
      = axmap ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axmap) ).

thf(f420,plain,
    ( axassoc
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f178]) ).

thf(f178,plain,
    ( axassoc
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                  = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f177]) ).

thf(f177,plain,
    ( axassoc
    = ( ! [X0: subst,X1: subst,X2: subst] :
          ( ( comp @ ( comp @ X0 @ X1 ) @ X2 )
          = ( comp @ X0 @ ( comp @ X1 @ X2 ) ) ) ) ),
    inference(rectify,[],[f8]) ).

thf(f8,axiom,
    ( axassoc
    = ( ! [X2: subst,X3: subst,X4: subst] :
          ( ( comp @ ( comp @ X2 @ X3 ) @ X4 )
          = ( comp @ X2 @ ( comp @ X3 @ X4 ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axassoc) ).

thf(f360,plain,
    ( axshiftcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
              = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f310]) ).

thf(f310,plain,
    ( axshiftcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
              = Y0 ) ) ) ),
    inference(fool_elimination,[],[f309]) ).

thf(f309,plain,
    ! [X0: term,X1: subst] :
      ( ( ( comp @ sh @ ( push @ X0 @ X1 ) )
        = X1 )
      = axshiftcons ),
    inference(rectify,[],[f7]) ).

thf(f7,axiom,
    ! [X0: term,X2: subst] :
      ( ( ( comp @ sh @ ( push @ X0 @ X2 ) )
        = X2 )
      = axshiftcons ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axshiftcons) ).

thf(f379,plain,
    ( axidl
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ id @ Y0 )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f118]) ).

thf(f118,plain,
    ( axidl
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ id @ Y0 )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f117]) ).

thf(f117,plain,
    ( axidl
    = ( ! [X0: subst] :
          ( ( comp @ id @ X0 )
          = X0 ) ) ),
    inference(rectify,[],[f6]) ).

thf(f6,axiom,
    ( axidl
    = ( ! [X2: subst] :
          ( ( comp @ id @ X2 )
          = X2 ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axidl) ).

thf(f351,plain,
    ( axclos
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f124]) ).

thf(f124,plain,
    ( axclos
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) ),
    inference(fool_elimination,[],[f123]) ).

thf(f123,plain,
    ! [X0: subst,X1: term,X2: subst] :
      ( ( ( sub @ X1 @ ( comp @ X2 @ X0 ) )
        = ( sub @ ( sub @ X1 @ X2 ) @ X0 ) )
      = axclos ),
    inference(rectify,[],[f5]) ).

thf(f5,axiom,
    ! [X3: subst,X0: term,X2: subst] :
      ( ( ( sub @ ( sub @ X0 @ X2 ) @ X3 )
        = ( sub @ X0 @ ( comp @ X2 @ X3 ) ) )
      = axclos ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axclos) ).

thf(f361,plain,
    ( axabs
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( ( sub @ ( lam @ Y0 ) @ Y1 )
              = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f156]) ).

thf(f156,plain,
    ( axabs
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( ( sub @ ( lam @ Y0 ) @ Y1 )
              = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f155]) ).

thf(f155,plain,
    ( axabs
    = ( ! [X0: subst,X1: term] :
          ( ( sub @ ( lam @ X1 ) @ X0 )
          = ( lam @ ( sub @ X1 @ ( push @ one @ ( comp @ X0 @ sh ) ) ) ) ) ) ),
    inference(rectify,[],[f4]) ).

thf(f4,axiom,
    ( axabs
    = ( ! [X2: subst,X0: term] :
          ( ( sub @ ( lam @ X0 ) @ X2 )
          = ( lam @ ( sub @ X0 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axabs) ).

thf(f422,plain,
    ( axvarid
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f268]) ).

thf(f268,plain,
    ( axvarid
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f3]) ).

thf(f3,axiom,
    ! [X0: term] :
      ( ( ( sub @ X0 @ id )
        = X0 )
      = axvarid ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axvarid) ).

thf(f382,plain,
    ( axvarcons
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( ( sub @ one @ ( push @ Y0 @ Y1 ) )
              = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f292]) ).

thf(f292,plain,
    ( axvarcons
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( ( sub @ one @ ( push @ Y0 @ Y1 ) )
              = Y0 ) ) ) ),
    inference(fool_elimination,[],[f291]) ).

thf(f291,plain,
    ( axvarcons
    = ( ! [X0: subst,X1: term] :
          ( ( sub @ one @ ( push @ X1 @ X0 ) )
          = X1 ) ) ),
    inference(rectify,[],[f2]) ).

thf(f2,axiom,
    ( axvarcons
    = ( ! [X2: subst,X0: term] :
          ( ( sub @ one @ ( push @ X0 @ X2 ) )
          = X0 ) ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axvarcons) ).

thf(f336,plain,
    ( axapp
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ ( ap @ Y1 @ Y0 ) @ Y2 )
                  = ( ap @ ( sub @ Y1 @ Y2 ) @ ( sub @ Y0 @ Y2 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f168]) ).

thf(f168,plain,
    ( axapp
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ ( ap @ Y1 @ Y0 ) @ Y2 )
                  = ( ap @ ( sub @ Y1 @ Y2 ) @ ( sub @ Y0 @ Y2 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f167]) ).

thf(f167,plain,
    ! [X0: subst,X1: term,X2: term] :
      ( ( ( sub @ ( ap @ X1 @ X2 ) @ X0 )
        = ( ap @ ( sub @ X1 @ X0 ) @ ( sub @ X2 @ X0 ) ) )
      = axapp ),
    inference(rectify,[],[f1]) ).

thf(f1,axiom,
    ! [X2: subst,X0: term,X1: term] :
      ( ( ( sub @ ( ap @ X0 @ X1 ) @ X2 )
        = ( ap @ ( sub @ X0 @ X2 ) @ ( sub @ X1 @ X2 ) ) )
      = axapp ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',axapp) ).

thf(f433,plain,
    ( hoasapnotvar_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => hoasapnotvar ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f140]) ).

thf(f140,plain,
    ( hoasapnotvar_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => hoasapnotvar ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f139]) ).

thf(f139,plain,
    ( axapp
   => ( ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => hoasapnotvar ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
      = hoasapnotvar_gthm ) ),
    inference(rectify,[],[f74]) ).

thf(f74,axiom,
    ( axapp
   => ( ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => hoasapnotvar ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
      = hoasapnotvar_gthm ) ),
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',hoasapnotvar_gthm) ).

thf(f393,plain,
    hoasapnotvar_gthm != $true,
    inference(cnf_transformation,[],[f331]) ).

thf(f331,plain,
    hoasapnotvar_gthm != $true,
    inference(flattening,[],[f245]) ).

thf(f245,plain,
    hoasapnotvar_gthm != $true,
    inference(fool_elimination,[],[f244]) ).

thf(f244,plain,
    ~ hoasapnotvar_gthm,
    inference(rectify,[],[f115]) ).

thf(f115,negated_conjecture,
    ~ hoasapnotvar_gthm,
    inference(negated_conjecture,[],[f114]) ).

thf(f114,conjecture,
    hoasapnotvar_gthm,
    file('/export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630',thm) ).

thf(f1019,plain,
    ( $true
    = ( var @ ( ap @ sK42 @ sK43 ) ) ),
    inference(forward_demodulation,[],[f1014,f921]) ).

thf(f921,plain,
    ! [X1: term] :
      ( ( sub @ X1 @ id )
      = X1 ),
    inference(equality_proxy_clausification,[],[f920]) ).

thf(f920,plain,
    ! [X1: term] :
      ( $true
      = ( ( sub @ X1 @ id )
        = X1 ) ),
    inference(beta_eta_normalization,[],[f919]) ).

thf(f919,plain,
    ! [X1: term] :
      ( $true
      = ( ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 )
        @ X1 ) ),
    inference(pi_clausification,[],[f910]) ).

thf(f910,plain,
    ( ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) )
    = $true ),
    inference(binary_proxy_clausification,[],[f909]) ).

thf(f909,plain,
    ( $true
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                    = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
      & ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) ) ) ),
    inference(binary_proxy_clausification,[],[f889]) ).

thf(f889,plain,
    ( ( ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                      = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
        & ( !! @ term
          @ ^ [Y0: term] :
              ( ( sub @ Y0 @ id )
              = Y0 ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                            = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                         => ( Y3 = Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                           => ( Y3 = Y2 ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                 => ( !! @ ( subst > term > term )
                    @ ^ [Y1: subst > term > term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                      = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                            = ( lam @ ( Y1 @ sh @ one ) ) )
                         => ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( Y0 @ Y2 @ Y3 )
                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                  = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( lam @ ( Y0 @ sh @ one ) )
                             != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
               => ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f824]) ).

thf(f824,plain,
    ( ( ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ id @ Y0 )
              = Y0 ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ Y0 @ id )
              = Y0 ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                      = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
     => ( ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                        = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
          & ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                              = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                           => ( Y3 = Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                             => ( Y3 = Y2 ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                   => ( !! @ ( subst > term > term )
                      @ ^ [Y1: subst > term > term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                        = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                              = ( lam @ ( Y1 @ sh @ one ) ) )
                           => ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( Y0 @ Y2 @ Y3 )
                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                    = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( lam @ ( Y0 @ sh @ one ) )
                               != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                 => ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f771]) ).

thf(f771,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term @ Y0 ) ) ) ) )
     => ( ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ id @ Y0 )
                = Y0 ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ Y0 @ id )
                = Y0 ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                        = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
       => ( ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                          = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
            & ( !! @ term
              @ ^ [Y0: term] :
                  ( ( sub @ Y0 @ id )
                  = Y0 ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                             => ( Y3 = Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                               => ( Y3 = Y2 ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                     => ( !! @ ( subst > term > term )
                        @ ^ [Y1: subst > term > term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                          = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                = ( lam @ ( Y1 @ sh @ one ) ) )
                             => ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( Y0 @ Y2 @ Y3 )
                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                      = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                 != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                   => ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f751]) ).

thf(f751,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y1 )
                     => ( ( Y0 @ Y2 )
                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term @ Y0 ) ) ) ) )
       => ( ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ id @ Y0 )
                  = Y0 ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ Y0 @ id )
                  = Y0 ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                          = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
         => ( ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                            = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
              & ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                  = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                               => ( Y3 = Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                 => ( Y3 = Y2 ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                       => ( !! @ ( subst > term > term )
                          @ ^ [Y1: subst > term > term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                            = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                               => ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( Y0 @ Y2 @ Y3 )
                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                        = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                   != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                     => ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f694]) ).

thf(f694,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ ( term > $o )
                @ ^ [Y2: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                   => ( ( Y2 @ Y0 )
                     => ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y1 )
                       => ( ( Y0 @ Y2 )
                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                         => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term @ Y0 ) ) ) ) )
         => ( ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ id @ Y0 )
                    = Y0 ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ Y0 @ id )
                    = Y0 ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                            = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
           => ( ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                              = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                & ( !! @ term
                  @ ^ [Y0: term] :
                      ( ( sub @ Y0 @ id )
                      = Y0 ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                    = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                 => ( Y3 = Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                      = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                   => ( Y3 = Y2 ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                         => ( !! @ ( subst > term > term )
                            @ ^ [Y1: subst > term > term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                              = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                               => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                    = ( lam @ ( Y1 @ sh @ one ) ) )
                                 => ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( Y0 @ Y2 @ Y3 )
                                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                          = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( lam @ ( Y0 @ sh @ one ) )
                                     != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                       => ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f689]) ).

thf(f689,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y1 )
                       => ( ( Y0 @ Y2 )
                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( Y0 @ Y1 )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term @ Y0 ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ ( term > $o )
                  @ ^ [Y2: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                     => ( ( Y2 @ Y0 )
                       => ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y1 )
                         => ( ( Y0 @ Y2 )
                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term @ Y0 ) ) ) ) )
           => ( ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ Y0 @ id )
                      = Y0 ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                              = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
             => ( ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                  & ( !! @ term
                    @ ^ [Y0: term] :
                        ( ( sub @ Y0 @ id )
                        = Y0 ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                      = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                   => ( Y3 = Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                     => ( Y3 = Y2 ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                           => ( !! @ ( subst > term > term )
                              @ ^ [Y1: subst > term > term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                   => ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( Y0 @ Y2 @ Y3 )
                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                            = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                       != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                         => ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f682]) ).

thf(f682,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ~ ( var @ ( lam @ Y0 ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y1 )
                         => ( ( Y0 @ Y2 )
                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( Y0 @ Y1 )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term @ Y0 ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ ( term > $o )
                    @ ^ [Y2: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y2 @ ( sub @ Y3 @ Y1 ) ) ) )
                       => ( ( Y2 @ Y0 )
                         => ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y2 @ ( sub @ Y3 @ ( push @ Y0 @ Y1 ) ) ) ) ) ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y1 )
                           => ( ( Y0 @ Y2 )
                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                             => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term @ Y0 ) ) ) ) )
             => ( ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ id @ Y0 )
                        = Y0 ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ Y0 @ id )
                        = Y0 ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 )
                                = ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) ) ) ) ) ) )
               => ( ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( sub @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                  = ( sub @ ( sub @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                    & ( !! @ term
                      @ ^ [Y0: term] :
                          ( ( sub @ Y0 @ id )
                          = Y0 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                                        = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                                     => ( Y3 = Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                       => ( Y3 = Y2 ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                             => ( !! @ ( subst > term > term )
                                @ ^ [Y1: subst > term > term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                                  = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                        = ( lam @ ( Y1 @ sh @ one ) ) )
                                     => ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( Y0 @ Y2 @ Y3 )
                                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                              = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( lam @ ( Y0 @ sh @ one ) )
                                         != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                           => ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f672]) ).

thf(f1014,plain,
    ( ( var @ ( ap @ ( sub @ sK42 @ id ) @ sK43 ) )
    = $true ),
    inference(backward_demodulation,[],[f1012,f921]) ).

thf(f1012,plain,
    ( $true
    = ( var @ ( sub @ ( ap @ ( sub @ sK42 @ id ) @ sK43 ) @ id ) ) ),
    inference(not_proxy_clausification,[],[f1011]) ).

thf(f1011,plain,
    ( $false
    = ( ~ ( var @ ( sub @ ( ap @ ( sub @ sK42 @ id ) @ sK43 ) @ id ) ) ) ),
    inference(beta_eta_normalization,[],[f1010]) ).

thf(f1010,plain,
    ( ( ^ [Y0: term] :
          ~ ( var @ ( sub @ ( ap @ ( sub @ sK42 @ id ) @ Y0 ) @ id ) )
      @ sK43 )
    = $false ),
    inference(sigma_clausification,[],[f1009]) ).

thf(f1009,plain,
    ( ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( sub @ ( ap @ ( sub @ sK42 @ id ) @ Y0 ) @ id ) ) )
    = $false ),
    inference(beta_eta_normalization,[],[f1008]) ).

thf(f1008,plain,
    ( ( ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) )
      @ sK42 )
    = $false ),
    inference(sigma_clausification,[],[f995]) ).

thf(f995,plain,
    ( ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f977]) ).

thf(f977,plain,
    ( $false
    = ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
     => ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f948]) ).

thf(f948,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                          = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( lam @ ( Y0 @ sh @ one ) )
                     != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
       => ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f935]) ).

thf(f935,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
           => ( !! @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                      = ( lam @ ( Y1 @ sh @ one ) ) )
                   => ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( Y0 @ Y2 @ Y3 )
                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( lam @ ( Y0 @ sh @ one ) )
                       != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
         => ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f922]) ).

thf(f922,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                       => ( Y3 = Y2 ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
             => ( !! @ ( subst > term > term )
                @ ^ [Y1: subst > term > term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                  = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                        = ( lam @ ( Y1 @ sh @ one ) ) )
                     => ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( Y0 @ Y2 @ Y3 )
                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                              = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( lam @ ( Y0 @ sh @ one ) )
                         != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
           => ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f908]) ).

thf(f908,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ ( sub @ Y3 @ id ) @ Y0 )
                          = ( ap @ ( sub @ Y1 @ id ) @ Y2 ) )
                       => ( Y3 = Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                         => ( Y3 = Y2 ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
               => ( !! @ ( subst > term > term )
                  @ ^ [Y1: subst > term > term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y1 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) )
                                    = ( sub @ ( Y1 @ Y3 @ Y2 ) @ Y4 ) ) ) ) )
                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                          = ( lam @ ( Y1 @ sh @ one ) ) )
                       => ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( Y0 @ Y2 @ Y3 )
                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( Y0 @ ( comp @ Y2 @ Y1 ) @ ( sub @ Y3 @ Y1 ) )
                                = ( sub @ ( Y0 @ Y2 @ Y3 ) @ Y1 ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( lam @ ( Y0 @ sh @ one ) )
                           != ( ap @ ( sub @ Y2 @ id ) @ Y1 ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
             => ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f889]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem    : ALG261^1 : TPTP v8.1.2. Bugfixed v5.2.0.
% 0.07/0.14  % Command    : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule file --schedule_file /export/starexec/sandbox2/solver/bin/quickGreedyProduceRating_steal_pow3.txt --cores 8 -m 12000 -t %d %s
% 0.15/0.35  % Computer : n002.cluster.edu
% 0.15/0.35  % Model    : x86_64 x86_64
% 0.15/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.35  % Memory   : 8042.1875MB
% 0.15/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.15/0.35  % CPULimit   : 300
% 0.15/0.35  % WCLimit    : 300
% 0.15/0.35  % DateTime   : Fri May  3 19:57:53 EDT 2024
% 0.15/0.35  % CPUTime    : 
% 0.15/0.35  This is a TH0_THM_EQU_NAR problem
% 0.15/0.35  Running vampire_ho --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_hol --cores 8 -m 12000 -t 300 /export/starexec/sandbox2/tmp/tmp.Heur3guCZx/Vampire---4.8_27630
% 0.15/0.38  % (27747)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.15/0.38  % (27741)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on Vampire---4 for (2999ds/4Mi)
% 0.15/0.38  % (27740)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on Vampire---4 for (2999ds/183Mi)
% 0.15/0.38  % (27743)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on Vampire---4 for (2999ds/2Mi)
% 0.15/0.38  % (27744)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on Vampire---4 for (2999ds/2Mi)
% 0.15/0.38  % (27742)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on Vampire---4 for (2999ds/27Mi)
% 0.15/0.38  % (27745)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on Vampire---4 for (2999ds/275Mi)
% 0.15/0.38  % (27743)Instruction limit reached!
% 0.15/0.38  % (27743)------------------------------
% 0.15/0.38  % (27743)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.38  % (27743)Termination reason: Unknown
% 0.15/0.38  % (27743)Termination phase: shuffling
% 0.15/0.38  
% 0.15/0.38  % (27743)Memory used [KB]: 1151
% 0.15/0.38  % (27743)Time elapsed: 0.003 s
% 0.15/0.38  % (27743)Instructions burned: 2 (million)
% 0.15/0.38  % (27743)------------------------------
% 0.15/0.38  % (27743)------------------------------
% 0.15/0.38  % (27744)Instruction limit reached!
% 0.15/0.38  % (27744)------------------------------
% 0.15/0.38  % (27744)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.38  % (27744)Termination reason: Unknown
% 0.15/0.38  % (27744)Termination phase: shuffling
% 0.15/0.38  
% 0.15/0.38  % (27744)Memory used [KB]: 1151
% 0.15/0.38  % (27744)Time elapsed: 0.003 s
% 0.15/0.38  % (27744)Instructions burned: 2 (million)
% 0.15/0.38  % (27744)------------------------------
% 0.15/0.38  % (27744)------------------------------
% 0.15/0.38  % (27747)Instruction limit reached!
% 0.15/0.38  % (27747)------------------------------
% 0.15/0.38  % (27747)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.38  % (27747)Termination reason: Unknown
% 0.15/0.38  % (27747)Termination phase: shuffling
% 0.15/0.38  
% 0.15/0.38  % (27747)Memory used [KB]: 1279
% 0.15/0.38  % (27747)Time elapsed: 0.004 s
% 0.15/0.38  % (27747)Instructions burned: 4 (million)
% 0.15/0.38  % (27747)------------------------------
% 0.15/0.38  % (27747)------------------------------
% 0.15/0.39  % (27741)Instruction limit reached!
% 0.15/0.39  % (27741)------------------------------
% 0.15/0.39  % (27741)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.39  % (27741)Termination reason: Unknown
% 0.15/0.39  % (27741)Termination phase: shuffling
% 0.15/0.39  
% 0.15/0.39  % (27741)Memory used [KB]: 1279
% 0.15/0.39  % (27741)Time elapsed: 0.005 s
% 0.15/0.39  % (27741)Instructions burned: 5 (million)
% 0.15/0.39  % (27741)------------------------------
% 0.15/0.39  % (27741)------------------------------
% 0.15/0.39  % (27746)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on Vampire---4 for (2999ds/18Mi)
% 0.15/0.40  % (27748)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on Vampire---4 for (2999ds/37Mi)
% 0.15/0.40  % (27750)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.15/0.40  % (27745)Refutation not found, incomplete strategy
% 0.15/0.40  % (27745)------------------------------
% 0.15/0.40  % (27745)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (27745)Termination reason: Refutation not found, incomplete strategy
% 0.15/0.40  
% 0.15/0.40  % (27751)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on Vampire---4 for (2999ds/1041Mi)
% 0.15/0.40  
% 0.15/0.40  % (27745)Memory used [KB]: 6140
% 0.15/0.40  % (27745)Time elapsed: 0.019 s
% 0.15/0.40  % (27745)Instructions burned: 29 (million)
% 0.15/0.40  % (27745)------------------------------
% 0.15/0.40  % (27745)------------------------------
% 0.15/0.40  % (27742)Instruction limit reached!
% 0.15/0.40  % (27742)------------------------------
% 0.15/0.40  % (27742)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (27742)Termination reason: Unknown
% 0.15/0.40  % (27742)Termination phase: Property scanning
% 0.15/0.40  
% 0.15/0.40  % (27742)Memory used [KB]: 1791
% 0.15/0.40  % (27742)Time elapsed: 0.017 s
% 0.15/0.40  % (27742)Instructions burned: 29 (million)
% 0.15/0.40  % (27742)------------------------------
% 0.15/0.40  % (27742)------------------------------
% 0.15/0.40  % (27750)Instruction limit reached!
% 0.15/0.40  % (27750)------------------------------
% 0.15/0.40  % (27750)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (27750)Termination reason: Unknown
% 0.15/0.40  % (27750)Termination phase: shuffling
% 0.15/0.40  
% 0.15/0.40  % (27750)Memory used [KB]: 1279
% 0.15/0.40  % (27750)Time elapsed: 0.004 s
% 0.15/0.40  % (27750)Instructions burned: 4 (million)
% 0.15/0.40  % (27750)------------------------------
% 0.15/0.40  % (27750)------------------------------
% 0.15/0.40  % (27749)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on Vampire---4 for (2999ds/15Mi)
% 0.15/0.40  % (27746)Instruction limit reached!
% 0.15/0.40  % (27746)------------------------------
% 0.15/0.40  % (27746)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.41  % (27746)Termination reason: Unknown
% 0.15/0.41  % (27746)Termination phase: Property scanning
% 0.15/0.41  
% 0.15/0.41  % (27746)Memory used [KB]: 1663
% 0.15/0.41  % (27746)Time elapsed: 0.013 s
% 0.15/0.41  % (27746)Instructions burned: 20 (million)
% 0.15/0.41  % (27746)------------------------------
% 0.15/0.41  % (27746)------------------------------
% 0.21/0.41  % (27749)Instruction limit reached!
% 0.21/0.41  % (27749)------------------------------
% 0.21/0.41  % (27749)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.41  % (27749)Termination reason: Unknown
% 0.21/0.41  % (27749)Termination phase: Property scanning
% 0.21/0.41  
% 0.21/0.41  % (27749)Memory used [KB]: 1663
% 0.21/0.41  % (27749)Time elapsed: 0.012 s
% 0.21/0.41  % (27749)Instructions burned: 16 (million)
% 0.21/0.41  % (27749)------------------------------
% 0.21/0.41  % (27749)------------------------------
% 0.21/0.41  % (27752)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on Vampire---4 for (2999ds/7Mi)
% 0.21/0.42  % (27753)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on Vampire---4 for (2999ds/16Mi)
% 0.21/0.42  % (27754)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.21/0.42  % (27748)Instruction limit reached!
% 0.21/0.42  % (27748)------------------------------
% 0.21/0.42  % (27748)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.42  % (27748)Termination reason: Unknown
% 0.21/0.42  % (27748)Termination phase: Property scanning
% 0.21/0.42  
% 0.21/0.42  % (27748)Memory used [KB]: 1791
% 0.21/0.42  % (27748)Time elapsed: 0.020 s
% 0.21/0.42  % (27748)Instructions burned: 38 (million)
% 0.21/0.42  % (27748)------------------------------
% 0.21/0.42  % (27748)------------------------------
% 0.21/0.42  % (27752)Instruction limit reached!
% 0.21/0.42  % (27752)------------------------------
% 0.21/0.42  % (27752)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.42  % (27752)Termination reason: Unknown
% 0.21/0.42  % (27752)Termination phase: shuffling
% 0.21/0.42  
% 0.21/0.42  % (27752)Memory used [KB]: 1407
% 0.21/0.42  % (27752)Time elapsed: 0.005 s
% 0.21/0.42  % (27752)Instructions burned: 8 (million)
% 0.21/0.42  % (27752)------------------------------
% 0.21/0.42  % (27752)------------------------------
% 0.21/0.42  % (27754)Instruction limit reached!
% 0.21/0.42  % (27754)------------------------------
% 0.21/0.42  % (27754)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.42  % (27754)Termination reason: Unknown
% 0.21/0.42  % (27754)Termination phase: shuffling
% 0.21/0.42  
% 0.21/0.42  % (27754)Memory used [KB]: 1279
% 0.21/0.42  % (27754)Time elapsed: 0.004 s
% 0.21/0.42  % (27754)Instructions burned: 4 (million)
% 0.21/0.42  % (27754)------------------------------
% 0.21/0.42  % (27754)------------------------------
% 0.21/0.42  % (27755)lrs+2_1:1_apa=on:au=on:bd=preordered:cnfonf=off:cs=on:ixr=off:sos=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.21/0.42  % (27755)Instruction limit reached!
% 0.21/0.42  % (27755)------------------------------
% 0.21/0.42  % (27755)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.42  % (27755)Termination reason: Unknown
% 0.21/0.42  % (27755)Termination phase: shuffling
% 0.21/0.42  
% 0.21/0.42  % (27755)Memory used [KB]: 1279
% 0.21/0.42  % (27755)Time elapsed: 0.004 s
% 0.21/0.42  % (27755)Instructions burned: 3 (million)
% 0.21/0.42  % (27755)------------------------------
% 0.21/0.42  % (27755)------------------------------
% 0.21/0.42  % (27753)Instruction limit reached!
% 0.21/0.42  % (27753)------------------------------
% 0.21/0.42  % (27753)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.42  % (27753)Termination reason: Unknown
% 0.21/0.42  % (27753)Termination phase: shuffling
% 0.21/0.42  
% 0.21/0.42  % (27753)Memory used [KB]: 1535
% 0.21/0.42  % (27753)Time elapsed: 0.010 s
% 0.21/0.42  % (27753)Instructions burned: 16 (million)
% 0.21/0.42  % (27753)------------------------------
% 0.21/0.42  % (27753)------------------------------
% 0.21/0.43  % (27756)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on Vampire---4 for (2999ds/7Mi)
% 0.21/0.43  % (27759)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on Vampire---4 for (2999ds/4Mi)
% 0.21/0.43  % (27757)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.21/0.43  % (27756)Instruction limit reached!
% 0.21/0.43  % (27756)------------------------------
% 0.21/0.43  % (27756)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.43  % (27756)Termination reason: Unknown
% 0.21/0.43  % (27756)Termination phase: shuffling
% 0.21/0.43  
% 0.21/0.43  % (27756)Memory used [KB]: 1407
% 0.21/0.43  % (27756)Time elapsed: 0.006 s
% 0.21/0.43  % (27756)Instructions burned: 7 (million)
% 0.21/0.43  % (27756)------------------------------
% 0.21/0.43  % (27756)------------------------------
% 0.21/0.43  % (27760)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on Vampire---4 for (2999ds/18Mi)
% 0.21/0.43  % (27759)Instruction limit reached!
% 0.21/0.43  % (27759)------------------------------
% 0.21/0.43  % (27759)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.43  % (27759)Termination reason: Unknown
% 0.21/0.43  % (27759)Termination phase: shuffling
% 0.21/0.43  
% 0.21/0.43  % (27759)Memory used [KB]: 1279
% 0.21/0.43  % (27759)Time elapsed: 0.004 s
% 0.21/0.43  % (27759)Instructions burned: 6 (million)
% 0.21/0.43  % (27759)------------------------------
% 0.21/0.43  % (27759)------------------------------
% 0.21/0.43  % (27757)Instruction limit reached!
% 0.21/0.43  % (27757)------------------------------
% 0.21/0.43  % (27757)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.43  % (27757)Termination reason: Unknown
% 0.21/0.43  % (27757)Termination phase: shuffling
% 0.21/0.43  
% 0.21/0.43  % (27757)Memory used [KB]: 1279
% 0.21/0.43  % (27757)Time elapsed: 0.004 s
% 0.21/0.43  % (27757)Instructions burned: 4 (million)
% 0.21/0.43  % (27757)------------------------------
% 0.21/0.43  % (27757)------------------------------
% 0.21/0.44  % (27761)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on Vampire---4 for (2999ds/710Mi)
% 0.21/0.44  % (27762)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on Vampire---4 for (2999ds/6Mi)
% 0.21/0.44  % (27762)Instruction limit reached!
% 0.21/0.44  % (27762)------------------------------
% 0.21/0.44  % (27762)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.44  % (27762)Termination reason: Unknown
% 0.21/0.44  % (27762)Termination phase: shuffling
% 0.21/0.44  
% 0.21/0.44  % (27762)Memory used [KB]: 1279
% 0.21/0.44  % (27762)Time elapsed: 0.005 s
% 0.21/0.44  % (27762)Instructions burned: 6 (million)
% 0.21/0.44  % (27762)------------------------------
% 0.21/0.44  % (27762)------------------------------
% 0.21/0.44  % (27760)Instruction limit reached!
% 0.21/0.44  % (27760)------------------------------
% 0.21/0.44  % (27760)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.44  % (27760)Termination reason: Unknown
% 0.21/0.44  % (27760)Termination phase: shuffling
% 0.21/0.44  
% 0.21/0.44  % (27760)Memory used [KB]: 1663
% 0.21/0.44  % (27760)Time elapsed: 0.011 s
% 0.21/0.44  % (27760)Instructions burned: 18 (million)
% 0.21/0.44  % (27760)------------------------------
% 0.21/0.44  % (27760)------------------------------
% 0.21/0.45  % (27764)dis+21_1:8_apa=on:cnfonf=off:fd=off:fsr=off:hud=0:ins=1:kws=inv_frequency:nwc=10.0:ss=axioms:st=5.0:i=21:si=on:rtra=on_0 on Vampire---4 for (2999ds/21Mi)
% 0.21/0.45  % (27763)dis+1002_5:1_au=on:bd=off:e2e=on:fde=none:fs=off:fsr=off:sos=on:i=902:si=on:rtra=on_0 on Vampire---4 for (2999ds/902Mi)
% 0.21/0.45  % (27765)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on Vampire---4 for (2999ds/5Mi)
% 0.21/0.45  % (27765)Instruction limit reached!
% 0.21/0.45  % (27765)------------------------------
% 0.21/0.45  % (27765)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.45  % (27765)Termination reason: Unknown
% 0.21/0.45  % (27765)Termination phase: shuffling
% 0.21/0.45  
% 0.21/0.45  % (27765)Memory used [KB]: 1279
% 0.21/0.45  % (27765)Time elapsed: 0.005 s
% 0.21/0.45  % (27765)Instructions burned: 6 (million)
% 0.21/0.45  % (27765)------------------------------
% 0.21/0.45  % (27765)------------------------------
% 0.21/0.45  % (27761)Refutation not found, incomplete strategy
% 0.21/0.45  % (27761)------------------------------
% 0.21/0.45  % (27761)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.45  % (27761)Termination reason: Refutation not found, incomplete strategy
% 0.21/0.45  
% 0.21/0.45  
% 0.21/0.45  % (27761)Memory used [KB]: 6268
% 0.21/0.45  % (27761)Time elapsed: 0.018 s
% 0.21/0.45  % (27761)Instructions burned: 28 (million)
% 0.21/0.45  % (27761)------------------------------
% 0.21/0.45  % (27761)------------------------------
% 0.21/0.46  % (27764)Instruction limit reached!
% 0.21/0.46  % (27764)------------------------------
% 0.21/0.46  % (27764)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.46  % (27764)Termination reason: Unknown
% 0.21/0.46  % (27764)Termination phase: shuffling
% 0.21/0.46  
% 0.21/0.46  % (27764)Memory used [KB]: 1663
% 0.21/0.46  % (27764)Time elapsed: 0.011 s
% 0.21/0.46  % (27764)Instructions burned: 22 (million)
% 0.21/0.46  % (27764)------------------------------
% 0.21/0.46  % (27764)------------------------------
% 0.21/0.46  % (27766)lrs+2_1:1_cnfonf=lazy_not_gen_be_off:cs=on:fe=off:hud=10:inj=on:ins=3:plsq=on:plsqc=1:sd=10:ss=axioms:tnu=1:i=6:si=on:rtra=on_0 on Vampire---4 for (2999ds/6Mi)
% 0.21/0.46  % (27767)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on Vampire---4 for (2999ds/377Mi)
% 0.21/0.46  % (27766)Instruction limit reached!
% 0.21/0.46  % (27766)------------------------------
% 0.21/0.46  % (27766)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.46  % (27766)Termination reason: Unknown
% 0.21/0.46  % (27766)Termination phase: shuffling
% 0.21/0.46  
% 0.21/0.46  % (27766)Memory used [KB]: 1279
% 0.21/0.46  % (27766)Time elapsed: 0.005 s
% 0.21/0.46  % (27766)Instructions burned: 6 (million)
% 0.21/0.46  % (27766)------------------------------
% 0.21/0.46  % (27766)------------------------------
% 0.21/0.46  % (27770)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on Vampire---4 for (2998ds/879Mi)
% 0.21/0.47  % (27768)dis+1010_1:4_atotf=0.2:c=on:cbe=off:cnfonf=lazy_simp:fe=off:ins=2:ntd=on:s2a=on:s2at=5.0:sgt=5:ss=axioms:st=1.5:i=779:si=on:rtra=on_0 on Vampire---4 for (2999ds/779Mi)
% 0.21/0.47  % (27740)Instruction limit reached!
% 0.21/0.47  % (27740)------------------------------
% 0.21/0.47  % (27740)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.47  % (27740)Termination reason: Unknown
% 0.21/0.47  % (27740)Termination phase: Saturation
% 0.21/0.47  
% 0.21/0.47  % (27740)Memory used [KB]: 6780
% 0.21/0.47  % (27740)Time elapsed: 0.089 s
% 0.21/0.47  % (27740)Instructions burned: 183 (million)
% 0.21/0.47  % (27740)------------------------------
% 0.21/0.47  % (27740)------------------------------
% 0.21/0.47  % (27771)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on Vampire---4 for (2998ds/17Mi)
% 0.21/0.48  % (27769)lrs+10_1:1_cnfonf=lazy_not_be_gen:ntd=on:sp=const_min:ss=axioms:sup=off:i=19:si=on:rtra=on_0 on Vampire---4 for (2998ds/19Mi)
% 0.21/0.48  % (27770)Refutation not found, incomplete strategy
% 0.21/0.48  % (27770)------------------------------
% 0.21/0.48  % (27770)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.48  % (27770)Termination reason: Refutation not found, incomplete strategy
% 0.21/0.48  
% 0.21/0.48  
% 0.21/0.48  % (27770)Memory used [KB]: 6268
% 0.21/0.48  % (27770)Time elapsed: 0.016 s
% 0.21/0.48  % (27770)Instructions burned: 60 (million)
% 0.21/0.48  % (27770)------------------------------
% 0.21/0.48  % (27770)------------------------------
% 0.21/0.48  % (27771)Instruction limit reached!
% 0.21/0.48  % (27771)------------------------------
% 0.21/0.48  % (27771)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.48  % (27771)Termination reason: Unknown
% 0.21/0.48  % (27771)Termination phase: shuffling
% 0.21/0.48  
% 0.21/0.48  % (27771)Memory used [KB]: 1663
% 0.21/0.48  % (27771)Time elapsed: 0.010 s
% 0.21/0.48  % (27771)Instructions burned: 18 (million)
% 0.21/0.48  % (27771)------------------------------
% 0.21/0.48  % (27771)------------------------------
% 0.21/0.49  % (27772)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2998ds/3Mi)
% 0.21/0.49  % (27769)Instruction limit reached!
% 0.21/0.49  % (27769)------------------------------
% 0.21/0.49  % (27769)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.49  % (27769)Termination reason: Unknown
% 0.21/0.49  % (27769)Termination phase: shuffling
% 0.21/0.49  
% 0.21/0.49  % (27769)Memory used [KB]: 1663
% 0.21/0.49  % (27769)Time elapsed: 0.013 s
% 0.21/0.49  % (27769)Instructions burned: 19 (million)
% 0.21/0.49  % (27769)------------------------------
% 0.21/0.49  % (27769)------------------------------
% 0.21/0.49  % (27772)Instruction limit reached!
% 0.21/0.49  % (27772)------------------------------
% 0.21/0.49  % (27772)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.49  % (27772)Termination reason: Unknown
% 0.21/0.49  % (27772)Termination phase: shuffling
% 0.21/0.49  
% 0.21/0.49  % (27772)Memory used [KB]: 1279
% 0.21/0.49  % (27772)Time elapsed: 0.004 s
% 0.21/0.49  % (27772)Instructions burned: 3 (million)
% 0.21/0.49  % (27772)------------------------------
% 0.21/0.49  % (27772)------------------------------
% 0.21/0.49  % (27773)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on Vampire---4 for (2998ds/30Mi)
% 0.21/0.49  % (27774)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on Vampire---4 for (2998ds/127Mi)
% 0.21/0.50  % (27773)Instruction limit reached!
% 0.21/0.50  % (27773)------------------------------
% 0.21/0.50  % (27773)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.50  % (27773)Termination reason: Unknown
% 0.21/0.50  % (27773)Termination phase: Property scanning
% 0.21/0.50  
% 0.21/0.50  % (27773)Memory used [KB]: 1791
% 0.21/0.50  % (27773)Time elapsed: 0.009 s
% 0.21/0.50  % (27773)Instructions burned: 31 (million)
% 0.21/0.50  % (27773)------------------------------
% 0.21/0.50  % (27773)------------------------------
% 0.21/0.50  % (27775)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on Vampire---4 for (2998ds/100Mi)
% 0.21/0.50  % (27776)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2998ds/3Mi)
% 0.21/0.50  % (27776)Instruction limit reached!
% 0.21/0.50  % (27776)------------------------------
% 0.21/0.50  % (27776)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.50  % (27776)Termination reason: Unknown
% 0.21/0.50  % (27776)Termination phase: shuffling
% 0.21/0.50  
% 0.21/0.50  % (27776)Memory used [KB]: 1279
% 0.21/0.50  % (27776)Time elapsed: 0.003 s
% 0.21/0.50  % (27776)Instructions burned: 5 (million)
% 0.21/0.50  % (27776)------------------------------
% 0.21/0.50  % (27776)------------------------------
% 0.21/0.51  % (27777)lrs+10_8:1_au=on:avsq=on:e2e=on:ins=3:s2a=on:s2at=3.0:ss=axioms:i=20:si=on:rtra=on_0 on Vampire---4 for (2998ds/20Mi)
% 0.21/0.51  % (27778)dis+1002_1:1_cbe=off:hud=5:nm=4:plsq=on:plsqr=7,1:prag=on:sp=const_max:tnu=1:i=86:si=on:rtra=on_0 on Vampire---4 for (2998ds/86Mi)
% 0.21/0.52  % (27777)Instruction limit reached!
% 0.21/0.52  % (27777)------------------------------
% 0.21/0.52  % (27777)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.52  % (27777)Termination reason: Unknown
% 0.21/0.52  % (27777)Termination phase: Property scanning
% 0.21/0.52  
% 0.21/0.52  % (27777)Memory used [KB]: 1663
% 0.21/0.52  % (27777)Time elapsed: 0.011 s
% 0.21/0.52  % (27777)Instructions burned: 20 (million)
% 0.21/0.52  % (27777)------------------------------
% 0.21/0.52  % (27777)------------------------------
% 0.21/0.52  % (27767)First to succeed.
% 0.21/0.52  % (27775)Instruction limit reached!
% 0.21/0.52  % (27775)------------------------------
% 0.21/0.52  % (27775)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.52  % (27775)Termination reason: Unknown
% 0.21/0.52  % (27775)Termination phase: Saturation
% 0.21/0.52  
% 0.21/0.52  % (27775)Memory used [KB]: 6524
% 0.21/0.52  % (27775)Time elapsed: 0.027 s
% 0.21/0.52  % (27775)Instructions burned: 102 (million)
% 0.21/0.52  % (27775)------------------------------
% 0.21/0.52  % (27775)------------------------------
% 0.21/0.52  % (27763)Refutation not found, incomplete strategy
% 0.21/0.52  % (27763)------------------------------
% 0.21/0.52  % (27763)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.52  % (27763)Termination reason: Refutation not found, incomplete strategy
% 0.21/0.52  
% 0.21/0.52  
% 0.21/0.52  % (27763)Memory used [KB]: 8187
% 0.21/0.52  % (27763)Time elapsed: 0.078 s
% 0.21/0.52  % (27763)Instructions burned: 167 (million)
% 0.21/0.52  % (27763)------------------------------
% 0.21/0.52  % (27763)------------------------------
% 0.21/0.52  % (27774)Instruction limit reached!
% 0.21/0.52  % (27774)------------------------------
% 0.21/0.52  % (27774)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.52  % (27774)Termination reason: Unknown
% 0.21/0.52  % (27774)Termination phase: Saturation
% 0.21/0.52  
% 0.21/0.52  % (27774)Memory used [KB]: 6524
% 0.21/0.52  % (27774)Time elapsed: 0.034 s
% 0.21/0.52  % (27774)Instructions burned: 128 (million)
% 0.21/0.52  % (27774)------------------------------
% 0.21/0.52  % (27774)------------------------------
% 0.21/0.53  % (27779)lrs+1010_1:1_au=on:cbe=off:nm=2:ntd=on:sd=2:ss=axioms:st=5.0:i=107:si=on:rtra=on_0 on Vampire---4 for (2998ds/107Mi)
% 0.21/0.53  % (27780)lrs+2_1:1024_cnfonf=lazy_gen:fe=off:hud=15:plsq=on:plsqc=1:plsqr=32,1:i=39:si=on:rtra=on_0 on Vampire---4 for (2998ds/39Mi)
% 0.21/0.53  % (27781)dis+10_1:1_cnfonf=lazy_not_gen:fsr=off:kws=precedence:nwc=5.0:s2a=on:ss=axioms:st=1.5:i=448:si=on:rtra=on_0 on Vampire---4 for (2998ds/448Mi)
% 0.21/0.53  % (27778)Instruction limit reached!
% 0.21/0.53  % (27778)------------------------------
% 0.21/0.53  % (27778)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.53  % (27778)Termination reason: Unknown
% 0.21/0.53  % (27778)Termination phase: Property scanning
% 0.21/0.53  
% 0.21/0.53  % (27778)Memory used [KB]: 2046
% 0.21/0.53  % (27778)Time elapsed: 0.023 s
% 0.21/0.53  % (27778)Instructions burned: 87 (million)
% 0.21/0.53  % (27778)------------------------------
% 0.21/0.53  % (27778)------------------------------
% 0.21/0.54  % (27782)lrs+10_1:512_au=on:fde=unused:lma=on:nm=32:plsq=on:plsqc=1:plsqr=16121663,131072:sfv=off:sp=const_max:ss=axioms:st=3.0:tgt=full:i=46:si=on:rtra=on_0 on Vampire---4 for (2998ds/46Mi)
% 0.21/0.54  % (27780)Instruction limit reached!
% 0.21/0.54  % (27780)------------------------------
% 0.21/0.54  % (27780)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.54  % (27780)Termination reason: Unknown
% 0.21/0.54  % (27780)Termination phase: Property scanning
% 0.21/0.54  
% 0.21/0.54  % (27780)Memory used [KB]: 1791
% 0.21/0.54  % (27780)Time elapsed: 0.012 s
% 0.21/0.54  % (27780)Instructions burned: 41 (million)
% 0.21/0.54  % (27783)lrs+10_1:10_au=on:av=off:cbe=off:cnfonf=lazy_pi_sigma_gen:ntd=on:plsq=on:plsqc=1:plsqr=32,1:i=98:si=on:rtra=on_0 on Vampire---4 for (2998ds/98Mi)
% 0.21/0.54  % (27780)------------------------------
% 0.21/0.54  % (27780)------------------------------
% 0.21/0.55  % (27767)Refutation found. Thanks to Tanya!
% 0.21/0.55  % SZS status Theorem for Vampire---4
% 0.21/0.55  % SZS output start Proof for Vampire---4
% See solution above
% 0.21/0.55  % (27767)------------------------------
% 0.21/0.55  % (27767)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.21/0.55  % (27767)Termination reason: Refutation
% 0.21/0.55  
% 0.21/0.55  % (27767)Memory used [KB]: 9083
% 0.21/0.55  % (27767)Time elapsed: 0.092 s
% 0.21/0.55  % (27767)Instructions burned: 182 (million)
% 0.21/0.55  % (27767)------------------------------
% 0.21/0.55  % (27767)------------------------------
% 0.21/0.55  % (27739)Success in time 0.188 s
% 0.21/0.55  % Vampire---4.8 exiting
%------------------------------------------------------------------------------